{"id":1307,"date":"2026-07-22T06:03:20","date_gmt":"2026-07-22T06:03:20","guid":{"rendered":"https:\/\/panosky.com\/?page_id=1307"},"modified":"2026-08-25T08:26:31","modified_gmt":"2026-08-25T08:26:31","slug":"google-maps","status":"publish","type":"page","link":"https:\/\/panosky.com\/?page_id=1307","title":{"rendered":"Google Maps"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"1307\" class=\"elementor elementor-1307\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8fc6829 e-con e-atomic-element e-flexbox-base e-b471cf2 \" data-id=\"8fc6829\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"8fc6829\" data-e-type=\"e-flexbox\" data-id=\"8fc6829\">\n    <div class=\"elementor-element elementor-element-569b687 ps-map-hero e-flex e-con-boxed e-con e-parent\" data-id=\"569b687\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;background_motion_fx_motion_fx_scrolling&quot;:&quot;yes&quot;,&quot;background_motion_fx_scale_effect&quot;:&quot;yes&quot;,&quot;background_motion_fx_scale_speed&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:3,&quot;sizes&quot;:[]},&quot;background_motion_fx_scale_range&quot;:{&quot;unit&quot;:&quot;%&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:{&quot;start&quot;:53,&quot;end&quot;:100}},&quot;background_motion_fx_motion_fx_mouse&quot;:&quot;yes&quot;,&quot;background_motion_fx_mouseTrack_effect&quot;:&quot;yes&quot;,&quot;background_motion_fx_mouseTrack_speed&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:0.3,&quot;sizes&quot;:[]},&quot;background_motion_fx_scale_direction&quot;:&quot;out-in&quot;,&quot;background_motion_fx_devices&quot;:[&quot;desktop&quot;,&quot;tablet&quot;,&quot;mobile&quot;]}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bec28c9 e-con-full e-flex e-con e-child\" data-id=\"bec28c9\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-df71c7f elementor-widget elementor-widget-button\" data-id=\"df71c7f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"#\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">AUTHORIZED PARTNER<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ad316ba elementor-widget elementor-widget-heading\" data-id=\"ad316ba\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\"><span class=\"animated-global\">Google Maps<\/span><br>Intergration.<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1710a9d elementor-widget elementor-widget-heading\" data-id=\"1710a9d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">We illuminate you location on the<br>world's largest discovery engine.<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-cd1b1f0 elementor-widget elementor-widget-heading\" data-id=\"cd1b1f0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\"><span class=\"pano-dot\">&bull;<\/span> DIRECT PUBLISHING <span class=\"pano-dot\">&bull;<\/span> VERIFIED STREETVIEW<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-581240c e-con-full e-flex e-con e-child\" data-id=\"581240c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-785fa06 e-con e-atomic-element e-flexbox-base e-e53b3b9 \" data-id=\"785fa06\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"785fa06\" data-e-type=\"e-flexbox\" data-id=\"785fa06\">\n    <div class=\"elementor-element elementor-element-a203838 e-flex e-con-boxed e-con e-parent\" data-id=\"a203838\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-3b49a91 e-flex e-con-boxed e-con e-child\" data-id=\"3b49a91\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3e3a57a elementor-widget elementor-widget-heading\" data-id=\"3e3a57a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Direct-to-Grid Integration.<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a0ba7ae elementor-widget elementor-widget-text-editor\" data-id=\"a0ba7ae\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Most businesses are invisible where it matters most\u2014on Google Maps. PanoSky connects your location directly to Google\u2019s knowledge graph, powering visibility, trust and discovery.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-379ee66 elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list\" data-id=\"379ee66\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-list.default\">\n\t\t\t\t\t\t\t<ul class=\"elementor-icon-list-items\">\n\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"3.5 2 93.2 93.2\">version=\"1.1\" xml:space=\"preserve\" style=\"\" x=\"0px\" y=\"0px\" fill-rule=\"evenodd\" clip-rule=\"evenodd\" stroke-linejoin=\"round\" stroke-miterlimit=\"2\"&gt;  <defs><linearGradient id=\"iconGradient\" x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"100%\"><stop offset=\"0%\" stop-color=\"#008BFF\"><\/stop><stop offset=\"100%\" stop-color=\"#50f5FF\"><\/stop><\/linearGradient><\/defs>  <style type=\"text\/css\">    path, g { fill: url(#iconGradient); }  <\/style> <path d=\"m24 17c-6.0508 0-11 4.9492-11 11s4.9492 11 11 11 11-4.9492 11-11-4.9492-11-11-11zm52 0c-6.0508 0-11 4.9492-11 11s4.9492 11 11 11 11-4.9492 11-11-4.9492-11-11-11zm-26 2c-7.1562 0-13 5.8438-13 13s5.8438 13 13 13 13-5.8438 13-13-5.8438-13-13-13zm-26 2c3.8906 0 7 3.1094 7 7s-3.1094 7-7 7-7-3.1094-7-7 3.1094-7 7-7zm52 0c3.8906 0 7 3.1094 7 7s-3.1094 7-7 7-7-3.1094-7-7 3.1094-7 7-7zm-26 2c4.9961 0 9 4.0078 9 9 0 4.9961-4.0039 9-9 9s-9-4.0039-9-9c0-4.9922 4.0039-9 9-9zm-22.809 18c-5.6836 0-11.262 0.71484-15.676 3.1055s-7.5156 6.7734-7.5156 12.918v11.094c0 0.39062 0.11328 0.77344 0.33203 1.1016 2.8711 4.3594 14.285 5.5039 18.539 5.7812 1.1016 0.074219 2.0547-0.76172 2.1289-1.8672 0.074219-1.1016-0.76172-2.0547-1.8672-2.125-1.3945-0.089843-11.762-0.85937-15.133-3.7695v-10.211c0-4.918 1.9922-7.5469 5.418-9.4023 3.4297-1.8555 8.4453-2.6211 13.77-2.6211 4.957 0 10.246 1.0742 13.844 3.0625 0.96875 0.53516 2.1836 0.18359 2.7188-0.78125s0.18359-2.1836-0.78125-2.7188c-4.4766-2.4766-10.273-3.5625-15.781-3.5625zm45.621 0c-5.5078 0-11.305 1.0859-15.781 3.5625-0.96484 0.53516-1.3164 1.75-0.78125 2.7188s1.75 1.3164 2.7188 0.78125c3.5977-1.9883 8.8867-3.0625 13.844-3.0625 5.3242 0 10.34 0.76562 13.77 2.6211 3.4297 1.8555 5.4219 4.4844 5.418 9.4023v10.211c-3.375 2.918-13.758 3.6836-15.133 3.7695-1.1016 0.070313-1.9375 1.0234-1.8672 2.125 0.070312 1.1016 1.0234 1.9375 2.1289 1.8672 4.2617-0.27734 15.672-1.4219 18.539-5.7812 0.21484-0.32812 0.33203-0.71094 0.33203-1.1016v-11.094c0-6.1445-3.1016-10.531-7.5156-12.918-4.4141-2.3906-9.9922-3.1055-15.676-3.1055zm-22.812 8c-6.0234 0-11.559 0.88281-15.824 3.2109-4.2656 2.3281-7.1758 6.4141-7.1758 11.789v13c0 0.81641 0.49609 1.5547 1.2578 1.8594 0 0 10.258 4.1445 21.742 4.1406 11.484 0 21.742-4.1406 21.742-4.1406 0.75781-0.30469 1.2578-1.0391 1.2578-1.8594v-13c0-5.3711-2.9141-9.457-7.1797-11.789-4.2656-2.3281-9.7969-3.2109-15.82-3.2109zm0 4c5.6133 0 10.578 0.90625 13.902 2.7266 3.3281 1.8164 5.0977 4.2305 5.0977 8.2734v11.535c-1.6953 0.63281-9.5547 3.4648-19 3.4648s-17.305-2.832-19-3.4648v-11.535c0-4.0469 1.7695-6.457 5.0938-8.2734 3.3281-1.8164 8.293-2.7266 13.906-2.7266z\"><\/path><\/svg>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Google Maps Content Partner<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" data-name=\"map pin\" viewBox=\"0 0 105.93 122.88\"><defs><linearGradient id=\"iconGradient\" x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"100%\"><stop offset=\"0%\" stop-color=\"#008BFF\"><\/stop><stop offset=\"100%\" stop-color=\"#50f5FF\"><\/stop><\/linearGradient><\/defs><style type=\"text\/css\">    path, g { fill: url(#iconGradient); fill-rule:evenodd; }  <\/style><path d=\"M56.92,73.14a1.62,1.62,0,0,1-1.86.06A65.25,65.25,0,0,1,38.92,58.8,51.29,51.29,0,0,1,28.06,35.37C26.77,27.38,28,19.7,32,13.45a27,27,0,0,1,6-6.66A29.23,29.23,0,0,1,56.36,0,26,26,0,0,1,73.82,7.12a26,26,0,0,1,4.66,5.68c4.27,7,5.19,16,3.31,25.12A55.29,55.29,0,0,1,56.92,73.14Zm-19,.74V101.7l30.15,13V78.87a65.17,65.17,0,0,0,6.45-5.63v41.18l25-12.59v-56l-9.61,3.7a61.61,61.61,0,0,0,2.38-7.81l9.3-3.59A3.22,3.22,0,0,1,105.7,40a3.18,3.18,0,0,1,.22,1.16v62.7a3.23,3.23,0,0,1-2,3L72.72,122.53a3.23,3.23,0,0,1-2.92,0l-35-15.17L4.68,122.53a3.22,3.22,0,0,1-4.33-1.42A3.28,3.28,0,0,1,0,119.66V53.24a3.23,3.23,0,0,1,2.32-3.1L18.7,43.82a58.63,58.63,0,0,0,2.16,6.07L6.46,55.44v59l25-12.59V67.09a76.28,76.28,0,0,0,6.46,6.79ZM55.15,14.21A13.72,13.72,0,1,1,41.43,27.93,13.72,13.72,0,0,1,55.15,14.21Z\"><\/path><\/svg>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Direct Publishing to Google<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"800px\" height=\"800px\" viewBox=\"0 0 48 48\"><title>security-verified<\/title><g id=\"Layer_2\" data-name=\"Layer 2\"><g id=\"invisible_box\" data-name=\"invisible box\"><rect width=\"48\" height=\"48\" fill=\"none\"><\/rect><\/g><g id=\"icons_Q2\" data-name=\"icons Q2\"><path d=\"M24,6.2c5.3,1.5,11.1,3.3,14,4.3V26.2c0,3.4-3.7,9.4-14,15.4-10.3-6.1-14-12-14-15.4V10.5c2.9-1.1,8.7-2.8,14-4.3M24,2S6,7.1,6,8V26.2c0,9.2,13.3,17.3,17,19.5a1.8,1.8,0,0,0,2,0c3.8-2.1,17-10.3,17-19.5V8c0-.9-18-6-18-6Z\"><\/path><path d=\"M19.6,29.4l-5-4.9a2.1,2.1,0,0,1-.2-2.7,1.9,1.9,0,0,1,3-.2L21,25.2l9.6-9.6a2,2,0,0,1,2.8,2.8l-11,11A1.9,1.9,0,0,1,19.6,29.4Z\"><\/path><\/g><\/g><\/svg>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Verified. Optimized. Discoverable.<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-2215070 e-flex e-con-boxed e-con e-child\" data-id=\"2215070\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-44ae1c4 elementor-widget elementor-widget-heading\" data-id=\"44ae1c4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">The Problem<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9b2119d elementor-widget elementor-widget-text-editor\" data-id=\"9b2119d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Disconnected listings, missing data, and inconsistent experiences limit visibility and trust.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-204c750 elementor-widget elementor-widget-html\" data-id=\"204c750\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- PanoSky Pulsing Connection Diagram \u2014 Fully CSS Isolated V2\r\n     Paste this entire file into one Elementor HTML widget.\r\n\r\n     This version uses Shadow DOM. Page-wide SVG styles and gradient IDs\r\n     cannot reach the SVG inside this component, and its styles cannot leak out.\r\n-->\r\n\r\n<ps-connect-diagram-v2\r\n  role=\"img\"\r\n  aria-label=\"Five information routes connecting to a central property\"\r\n>\r\n  <template data-ps-shadow>\r\n    <style>\r\n      \/* =========================================================\r\n         EASY SETTINGS\r\n         ========================================================= *\/\r\n      :host {\r\n        --ps-max-width: 720px;\r\n        --ps-icon-color: #f5f9ff;\r\n        --ps-line-color: #8da2bd;\r\n        --ps-active-color: #42a9ff;\r\n        --ps-node-color: #ffffff;\r\n        --ps-center-fill: rgba(7, 40, 81, 0.72);\r\n        --ps-center-border: rgba(50, 139, 230, 0.58);\r\n        --ps-button-fill: #1686f7;\r\n        --ps-cycle-time: 5s;\r\n        --ps-step-gap: 1s;\r\n\r\n        display: block;\r\n        width: min(100%, var(--ps-max-width));\r\n        margin-inline: auto;\r\n        position: relative;\r\n        background: transparent;\r\n        line-height: 0;\r\n        contain: layout style;\r\n      }\r\n\r\n      *,\r\n      *::before,\r\n      *::after {\r\n        box-sizing: border-box;\r\n      }\r\n\r\n      .ps-connect-diagram {\r\n        display: block;\r\n        width: 100%;\r\n        position: relative;\r\n        background: transparent;\r\n        line-height: 0;\r\n      }\r\n\r\n      .ps-connect-diagram svg {\r\n        display: block;\r\n        width: 100%;\r\n        height: auto;\r\n        overflow: visible;\r\n\r\n        \/* Defensive reset against inherited SVG paint. *\/\r\n        fill: none;\r\n        stroke: none;\r\n        color: initial;\r\n      }\r\n\r\n      \/* ---------- Static styling ---------- *\/\r\n      .ps-route-path {\r\n        fill: none;\r\n        stroke: var(--ps-line-color);\r\n        stroke-width: 4;\r\n        stroke-linecap: round;\r\n        stroke-dasharray: 1 13;\r\n        opacity: 0.72;\r\n        vector-effect: non-scaling-stroke;\r\n      }\r\n\r\n      .ps-route-node {\r\n        fill: var(--ps-node-color);\r\n        stroke: none;\r\n        transform-box: fill-box;\r\n        transform-origin: center;\r\n      }\r\n\r\n      .ps-route-halo {\r\n        fill: none;\r\n        stroke: var(--ps-active-color);\r\n        stroke-width: 3;\r\n        opacity: 0;\r\n        transform-box: fill-box;\r\n        transform-origin: center;\r\n      }\r\n\r\n      .ps-side-icon,\r\n      .ps-building-icon,\r\n      .ps-close-icon {\r\n        fill: none;\r\n        stroke: var(--ps-icon-color);\r\n        stroke-width: 4;\r\n        stroke-linecap: round;\r\n        stroke-linejoin: round;\r\n        vector-effect: non-scaling-stroke;\r\n      }\r\n\r\n      .ps-center-disc {\r\n        fill: var(--ps-center-fill);\r\n        stroke: var(--ps-center-border);\r\n        stroke-width: 3;\r\n        vector-effect: non-scaling-stroke;\r\n      }\r\n\r\n      .ps-center-ring {\r\n        fill: none;\r\n        stroke: rgba(49, 142, 237, 0.2);\r\n        stroke-width: 12;\r\n        vector-effect: non-scaling-stroke;\r\n      }\r\n\r\n      .ps-close-disc {\r\n        fill: var(--ps-button-fill);\r\n        stroke: rgba(115, 195, 255, 0.65);\r\n        stroke-width: 2;\r\n        vector-effect: non-scaling-stroke;\r\n      }\r\n\r\n      \/* ---------- Rhythmic route pulse ---------- *\/\r\n      .ps-route-path {\r\n        animation: ps-route-flow var(--ps-cycle-time) ease-in-out infinite;\r\n        animation-delay: calc(var(--ps-step) * var(--ps-step-gap));\r\n      }\r\n\r\n      .ps-route-node {\r\n        animation: ps-node-pulse var(--ps-cycle-time) ease-out infinite;\r\n        animation-delay: calc(var(--ps-step) * var(--ps-step-gap));\r\n      }\r\n\r\n      .ps-route-halo {\r\n        animation: ps-halo-pulse var(--ps-cycle-time) ease-out infinite;\r\n        animation-delay: calc(var(--ps-step) * var(--ps-step-gap));\r\n      }\r\n\r\n      .ps-center-node {\r\n        transform-box: fill-box;\r\n        transform-origin: center;\r\n        animation: ps-center-breathe 3.4s ease-in-out infinite;\r\n      }\r\n\r\n      @keyframes ps-route-flow {\r\n        0%, 17%, 100% {\r\n          stroke: var(--ps-line-color);\r\n          stroke-dashoffset: 0;\r\n          opacity: 0.72;\r\n          filter: none;\r\n        }\r\n        5%, 11% {\r\n          stroke: var(--ps-active-color);\r\n          stroke-dashoffset: -28;\r\n          opacity: 1;\r\n          filter: drop-shadow(0 0 5px rgba(66, 169, 255, 0.95));\r\n        }\r\n      }\r\n\r\n      @keyframes ps-node-pulse {\r\n        0%, 17%, 100% {\r\n          transform: scale(1);\r\n          fill: var(--ps-node-color);\r\n          filter: none;\r\n        }\r\n        6% {\r\n          transform: scale(1.62);\r\n          fill: var(--ps-active-color);\r\n          filter: drop-shadow(0 0 8px rgba(66, 169, 255, 1));\r\n        }\r\n        12% {\r\n          transform: scale(1.06);\r\n          fill: var(--ps-node-color);\r\n        }\r\n      }\r\n\r\n      @keyframes ps-halo-pulse {\r\n        0%, 3%, 17%, 100% {\r\n          transform: scale(0.65);\r\n          opacity: 0;\r\n        }\r\n        6% {\r\n          transform: scale(1);\r\n          opacity: 0.8;\r\n        }\r\n        13% {\r\n          transform: scale(2.25);\r\n          opacity: 0;\r\n        }\r\n      }\r\n\r\n      @keyframes ps-center-breathe {\r\n        0%, 100% {\r\n          filter: drop-shadow(0 0 5px rgba(36, 135, 235, 0.2));\r\n        }\r\n        50% {\r\n          filter: drop-shadow(0 0 11px rgba(36, 135, 235, 0.5));\r\n        }\r\n      }\r\n\r\n      @media (prefers-reduced-motion: reduce) {\r\n        *,\r\n        *::before,\r\n        *::after {\r\n          animation: none !important;\r\n        }\r\n      }\r\n    <\/style>\r\n\r\n    <div class=\"ps-connect-diagram\">\r\n      <svg\r\n        viewBox=\"0 0 720 640\"\r\n        xmlns=\"http:\/\/www.w3.org\/2000\/svg\"\r\n        aria-hidden=\"true\"\r\n      >\r\n        <!-- Curved dotted connections -->\r\n        <g class=\"ps-route\" style=\"--ps-step: 0\">\r\n          <path class=\"ps-route-path\" pathLength=\"200\" d=\"M226 101 C340 101 383 122 456 223\"\/>\r\n          <circle class=\"ps-route-halo\" cx=\"226\" cy=\"101\" r=\"11\"\/>\r\n          <circle class=\"ps-route-node\" cx=\"226\" cy=\"101\" r=\"8\"\/>\r\n        <\/g>\r\n\r\n        <g class=\"ps-route\" style=\"--ps-step: 1\">\r\n          <path class=\"ps-route-path\" pathLength=\"200\" d=\"M226 204 C337 204 380 224 443 266\"\/>\r\n          <circle class=\"ps-route-halo\" cx=\"226\" cy=\"204\" r=\"11\"\/>\r\n          <circle class=\"ps-route-node\" cx=\"226\" cy=\"204\" r=\"8\"\/>\r\n        <\/g>\r\n\r\n        <g class=\"ps-route\" style=\"--ps-step: 2\">\r\n          <path class=\"ps-route-path\" pathLength=\"200\" d=\"M226 307 C327 307 376 307 432 307\"\/>\r\n          <circle class=\"ps-route-halo\" cx=\"226\" cy=\"307\" r=\"11\"\/>\r\n          <circle class=\"ps-route-node\" cx=\"226\" cy=\"307\" r=\"8\"\/>\r\n        <\/g>\r\n\r\n        <g class=\"ps-route\" style=\"--ps-step: 3\">\r\n          <path class=\"ps-route-path\" pathLength=\"200\" d=\"M226 410 C337 410 380 391 443 348\"\/>\r\n          <circle class=\"ps-route-halo\" cx=\"226\" cy=\"410\" r=\"11\"\/>\r\n          <circle class=\"ps-route-node\" cx=\"226\" cy=\"410\" r=\"8\"\/>\r\n        <\/g>\r\n\r\n        <g class=\"ps-route\" style=\"--ps-step: 4\">\r\n          <path class=\"ps-route-path\" pathLength=\"200\" d=\"M226 513 C340 513 383 492 456 391\"\/>\r\n          <circle class=\"ps-route-halo\" cx=\"226\" cy=\"513\" r=\"11\"\/>\r\n          <circle class=\"ps-route-node\" cx=\"226\" cy=\"513\" r=\"8\"\/>\r\n        <\/g>\r\n\r\n        <!-- Left icon: location pin -->\r\n        <g class=\"ps-side-icon\" transform=\"translate(132 73)\">\r\n          <path d=\"M22 0C10 0 2 9 2 20c0 15 20 37 20 37s20-22 20-37C42 9 34 0 22 0Z\"\/>\r\n          <circle cx=\"22\" cy=\"20\" r=\"7\"\/>\r\n        <\/g>\r\n\r\n        <!-- Left icon: image -->\r\n        <g class=\"ps-side-icon\" transform=\"translate(130 178)\">\r\n          <rect x=\"0\" y=\"0\" width=\"46\" height=\"38\" rx=\"5\"\/>\r\n          <circle cx=\"33\" cy=\"10\" r=\"4\"\/>\r\n          <path d=\"M5 32 16 21l8 7 7-8 10 12\"\/>\r\n        <\/g>\r\n\r\n        <!-- Left icon: information -->\r\n        <g class=\"ps-side-icon\" transform=\"translate(132 280)\">\r\n          <circle cx=\"22\" cy=\"22\" r=\"21\"\/>\r\n          <path d=\"M22 19v15\"\/>\r\n          <path d=\"M22 11h.01\" stroke-width=\"6\"\/>\r\n        <\/g>\r\n\r\n        <!-- Left icon: clock -->\r\n        <g class=\"ps-side-icon\" transform=\"translate(132 383)\">\r\n          <circle cx=\"22\" cy=\"22\" r=\"21\"\/>\r\n          <path d=\"M22 10v13l10 6\"\/>\r\n        <\/g>\r\n\r\n        <!-- Left icon: phone -->\r\n        <g class=\"ps-side-icon\" transform=\"translate(130 486)\">\r\n          <path d=\"M8 1 19 13l-7 8c5 10 12 17 22 22l8-7 12 11c-3 8-9 11-16 9C19 51 4 36 0 17-2 10 1 4 8 1Z\"\/>\r\n        <\/g>\r\n\r\n        <!-- Central property node -->\r\n        <g class=\"ps-center-node\">\r\n          <circle class=\"ps-center-ring\" cx=\"523\" cy=\"307\" r=\"94\"\/>\r\n          <circle class=\"ps-center-disc\" cx=\"523\" cy=\"307\" r=\"92\"\/>\r\n\r\n          <g class=\"ps-building-icon\" transform=\"translate(477 250)\">\r\n            <path d=\"M8 108V28h76v80\"\/>\r\n            <path d=\"M0 108h92\"\/>\r\n            <path d=\"M18 28V13h56v15\"\/>\r\n            <path d=\"M31 13V0h30v13\"\/>\r\n            <path d=\"M40 108V81h12v27\"\/>\r\n            <rect x=\"20\" y=\"42\" width=\"11\" height=\"14\" rx=\"1\"\/>\r\n            <rect x=\"41\" y=\"42\" width=\"11\" height=\"14\" rx=\"1\"\/>\r\n            <rect x=\"62\" y=\"42\" width=\"11\" height=\"14\" rx=\"1\"\/>\r\n            <rect x=\"20\" y=\"64\" width=\"11\" height=\"14\" rx=\"1\"\/>\r\n            <rect x=\"41\" y=\"64\" width=\"11\" height=\"14\" rx=\"1\"\/>\r\n            <rect x=\"62\" y=\"64\" width=\"11\" height=\"14\" rx=\"1\"\/>\r\n            <rect x=\"20\" y=\"86\" width=\"11\" height=\"14\" rx=\"1\"\/>\r\n            <rect x=\"62\" y=\"86\" width=\"11\" height=\"14\" rx=\"1\"\/>\r\n          <\/g>\r\n        <\/g>\r\n\r\n        <!-- Small blue close\/action badge -->\r\n        <g transform=\"translate(597 368)\">\r\n          <circle class=\"ps-close-disc\" cx=\"0\" cy=\"0\" r=\"29\"\/>\r\n          <g class=\"ps-close-icon\">\r\n            <path d=\"M-9-9 9 9\"\/>\r\n            <path d=\"M9-9-9 9\"\/>\r\n          <\/g>\r\n        <\/g>\r\n      <\/svg>\r\n    <\/div>\r\n  <\/template>\r\n<\/ps-connect-diagram-v2>\r\n\r\n<script>\r\n  (() => {\r\n    const tagName = 'ps-connect-diagram-v2';\r\n\r\n    if (customElements.get(tagName)) return;\r\n\r\n    customElements.define(\r\n      tagName,\r\n      class extends HTMLElement {\r\n        connectedCallback() {\r\n          if (this.shadowRoot) return;\r\n\r\n          const template = this.querySelector('template[data-ps-shadow]');\r\n          if (!template) return;\r\n\r\n          const shadow = this.attachShadow({ mode: 'open' });\r\n          shadow.appendChild(template.content.cloneNode(true));\r\n          template.remove();\r\n        }\r\n      }\r\n    );\r\n  })();\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-85ba172 e-con-full e-flex e-con e-child\" data-id=\"85ba172\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6df4623 elementor-widget elementor-widget-heading\" data-id=\"6df4623\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">The Solution<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-73df3fe elementor-widget elementor-widget-text-editor\" data-id=\"73df3fe\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Direct-to-Grid integration ensures accurate data, immersive content, and maximum discoverability.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a07e37c elementor-widget elementor-widget-html\" data-id=\"a07e37c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- PanoSky Orbiting Map Signal \u2014 Fully CSS Isolated V4\r\n     Paste this entire file into ONE Elementor HTML widget.\r\n\r\n     Shadow DOM prevents page-wide SVG styles and gradient IDs from entering\r\n     this widget, and prevents this widget's styles from affecting the page.\r\n-->\r\n\r\n<ps-map-signal-v4\r\n  role=\"img\"\r\n  aria-label=\"Google Maps location with orbiting verification badge and two alternating data signals\"\r\n>\r\n  <template data-ps-shadow>\r\n    <style>\r\n      \/* =========================================================\r\n         EASY SETTINGS\r\n         ========================================================= *\/\r\n      :host {\r\n        --ps-max-width: 720px;\r\n        --ps-ring-color: rgba(191, 210, 234, 0.24);\r\n        --ps-line-color: rgba(244, 249, 255, 0.8);\r\n        --ps-active-blue: #1995ff;\r\n        --ps-active-light: #6bd0ff;\r\n        --ps-orbit-time: 16s;\r\n\r\n        \/* ICON CONTROLS\r\n           X: larger moves right. Y: larger moves down. *\/\r\n        --ps-icon-x: 50.7%;\r\n        --ps-icon-y: 50.5%;\r\n        --ps-icon-size: 10%;\r\n\r\n        display: block;\r\n        width: min(100%, var(--ps-max-width));\r\n        margin-inline: auto;\r\n        position: relative;\r\n        line-height: 0;\r\n        background: transparent;\r\n        contain: layout style;\r\n      }\r\n\r\n      *,\r\n      *::before,\r\n      *::after {\r\n        box-sizing: border-box;\r\n      }\r\n\r\n      .ps-map-signal-v4 {\r\n        display: block;\r\n        width: 100%;\r\n        position: relative;\r\n        line-height: 0;\r\n        background: transparent;\r\n      }\r\n\r\n      .ps4-stage {\r\n        display: block;\r\n        width: 100%;\r\n        height: auto;\r\n        overflow: hidden;\r\n\r\n        \/* Defensive reset against inherited SVG paint. *\/\r\n        fill: none;\r\n        stroke: none;\r\n        color: initial;\r\n      }\r\n\r\n      .ps4-ring {\r\n        fill: none;\r\n        stroke: var(--ps-ring-color);\r\n        stroke-width: 3;\r\n        vector-effect: non-scaling-stroke;\r\n      }\r\n\r\n      .ps4-guide {\r\n        fill: none;\r\n        stroke: var(--ps-line-color);\r\n        stroke-width: 3;\r\n        stroke-linecap: round;\r\n        vector-effect: non-scaling-stroke;\r\n      }\r\n\r\n      .ps4-signal {\r\n        fill: none;\r\n        stroke: url(#ps4-signal-gradient-shadow-a91);\r\n        stroke-width: 7;\r\n        stroke-linecap: round;\r\n        vector-effect: non-scaling-stroke;\r\n        filter: drop-shadow(0 0 6px rgba(25, 149, 255, 1));\r\n      }\r\n\r\n      .ps4-dot {\r\n        fill: #ffffff;\r\n        stroke: none;\r\n        filter: drop-shadow(0 0 2px rgba(255, 255, 255, 0.8));\r\n      }\r\n\r\n      .ps4-halo {\r\n        fill: none;\r\n        stroke: var(--ps-active-light);\r\n        stroke-width: 3;\r\n        opacity: 0;\r\n        vector-effect: non-scaling-stroke;\r\n      }\r\n\r\n      \/* Badge travels on the middle ring and remains upright. *\/\r\n      .ps4-tick-orbit {\r\n        transform-box: view-box;\r\n        transform-origin: 365px 320px;\r\n        animation: ps4-orbit-turn var(--ps-orbit-time) linear infinite;\r\n      }\r\n\r\n      .ps4-tick-upright {\r\n        transform-box: fill-box;\r\n        transform-origin: center;\r\n        animation: ps4-counter-turn var(--ps-orbit-time) linear infinite;\r\n      }\r\n\r\n      \/* Original map icon is overlaid for easy placement control. *\/\r\n      .ps4-custom-map-icon {\r\n        position: absolute;\r\n        z-index: 2;\r\n        left: var(--ps-icon-x);\r\n        top: var(--ps-icon-y);\r\n        width: var(--ps-icon-size);\r\n        height: auto;\r\n        display: block;\r\n        overflow: visible;\r\n        transform: translate(-50%, -50%);\r\n        pointer-events: none;\r\n      }\r\n\r\n      @keyframes ps4-orbit-turn {\r\n        from { transform: rotate(24deg); }\r\n        to   { transform: rotate(384deg); }\r\n      }\r\n\r\n      @keyframes ps4-counter-turn {\r\n        from { transform: rotate(-24deg); }\r\n        to   { transform: rotate(-384deg); }\r\n      }\r\n\r\n      @media (prefers-reduced-motion: reduce) {\r\n        .ps4-tick-orbit,\r\n        .ps4-tick-upright {\r\n          animation: none !important;\r\n        }\r\n\r\n        .ps4-tick-orbit {\r\n          transform: rotate(24deg);\r\n        }\r\n\r\n        .ps4-tick-upright {\r\n          transform: rotate(-24deg);\r\n        }\r\n      }\r\n    <\/style>\r\n\r\n    <div class=\"ps-map-signal-v4\">\r\n      <svg\r\n        class=\"ps4-stage\"\r\n        viewBox=\"0 0 720 640\"\r\n        xmlns=\"http:\/\/www.w3.org\/2000\/svg\"\r\n        aria-hidden=\"true\"\r\n      >\r\n        <defs>\r\n          <!-- IDs are private inside this component's Shadow DOM. -->\r\n          <linearGradient\r\n            id=\"ps4-signal-gradient-shadow-a91\"\r\n            x1=\"0\"\r\n            y1=\"0\"\r\n            x2=\"1\"\r\n            y2=\"0\"\r\n          >\r\n            <stop offset=\"0\" stop-color=\"#0878ff\" stop-opacity=\"0.2\"\/>\r\n            <stop offset=\"0.35\" stop-color=\"#168eff\"\/>\r\n            <stop offset=\"1\" stop-color=\"#72d5ff\"\/>\r\n          <\/linearGradient>\r\n\r\n          <linearGradient\r\n            id=\"ps4-badge-gradient-shadow-b73\"\r\n            x1=\"0\"\r\n            y1=\"0\"\r\n            x2=\"1\"\r\n            y2=\"1\"\r\n          >\r\n            <stop offset=\"0\" stop-color=\"#28abff\"\/>\r\n            <stop offset=\"1\" stop-color=\"#0874eb\"\/>\r\n          <\/linearGradient>\r\n        <\/defs>\r\n\r\n        <!-- Three circular paths -->\r\n        <circle class=\"ps4-ring\" cx=\"365\" cy=\"320\" r=\"84\"\/>\r\n        <circle class=\"ps4-ring\" cx=\"365\" cy=\"320\" r=\"150\"\/>\r\n        <circle class=\"ps4-ring\" cx=\"365\" cy=\"320\" r=\"216\"\/>\r\n\r\n        <!-- Middle-ring intersections -->\r\n        <line class=\"ps4-guide\" x1=\"0\" y1=\"299\" x2=\"216.5\" y2=\"299\"\/>\r\n        <line class=\"ps4-guide\" x1=\"0\" y1=\"320\" x2=\"215\" y2=\"320\"\/>\r\n\r\n        <!-- Upper signal -->\r\n        <line class=\"ps4-signal\" x1=\"-58\" y1=\"299\" x2=\"0\" y2=\"299\" opacity=\"0\">\r\n          <animate\r\n            attributeName=\"x1\"\r\n            values=\"-58;-58;158.5;158.5\"\r\n            keyTimes=\"0;0.05;0.34;1\"\r\n            dur=\"5.6s\"\r\n            repeatCount=\"indefinite\"\r\n          \/>\r\n          <animate\r\n            attributeName=\"x2\"\r\n            values=\"0;0;216.5;216.5\"\r\n            keyTimes=\"0;0.05;0.34;1\"\r\n            dur=\"5.6s\"\r\n            repeatCount=\"indefinite\"\r\n          \/>\r\n          <animate\r\n            attributeName=\"opacity\"\r\n            values=\"0;1;1;0;0\"\r\n            keyTimes=\"0;0.05;0.34;0.4;1\"\r\n            dur=\"5.6s\"\r\n            repeatCount=\"indefinite\"\r\n          \/>\r\n        <\/line>\r\n\r\n        <circle class=\"ps4-halo\" cx=\"216.5\" cy=\"299\" r=\"8\">\r\n          <animate\r\n            attributeName=\"r\"\r\n            values=\"8;8;27;27\"\r\n            keyTimes=\"0;0.34;0.45;1\"\r\n            dur=\"5.6s\"\r\n            repeatCount=\"indefinite\"\r\n          \/>\r\n          <animate\r\n            attributeName=\"opacity\"\r\n            values=\"0;0;0.9;0;0\"\r\n            keyTimes=\"0;0.33;0.35;0.45;1\"\r\n            dur=\"5.6s\"\r\n            repeatCount=\"indefinite\"\r\n          \/>\r\n        <\/circle>\r\n\r\n        <circle class=\"ps4-dot\" cx=\"216.5\" cy=\"299\" r=\"7\">\r\n          <animate\r\n            attributeName=\"r\"\r\n            values=\"7;7;12;7;7\"\r\n            keyTimes=\"0;0.33;0.36;0.44;1\"\r\n            dur=\"5.6s\"\r\n            repeatCount=\"indefinite\"\r\n          \/>\r\n          <animate\r\n            attributeName=\"fill\"\r\n            values=\"#fff;#fff;#6bd0ff;#fff;#fff\"\r\n            keyTimes=\"0;0.33;0.36;0.44;1\"\r\n            dur=\"5.6s\"\r\n            repeatCount=\"indefinite\"\r\n          \/>\r\n        <\/circle>\r\n\r\n        <!-- Lower signal, offset by half a cycle -->\r\n        <line class=\"ps4-signal\" x1=\"-58\" y1=\"320\" x2=\"0\" y2=\"320\" opacity=\"0\">\r\n          <animate\r\n            attributeName=\"x1\"\r\n            values=\"-58;-58;157;157\"\r\n            keyTimes=\"0;0.05;0.34;1\"\r\n            dur=\"5.6s\"\r\n            begin=\"2.8s\"\r\n            repeatCount=\"indefinite\"\r\n          \/>\r\n          <animate\r\n            attributeName=\"x2\"\r\n            values=\"0;0;215;215\"\r\n            keyTimes=\"0;0.05;0.34;1\"\r\n            dur=\"5.6s\"\r\n            begin=\"2.8s\"\r\n            repeatCount=\"indefinite\"\r\n          \/>\r\n          <animate\r\n            attributeName=\"opacity\"\r\n            values=\"0;1;1;0;0\"\r\n            keyTimes=\"0;0.05;0.34;0.4;1\"\r\n            dur=\"5.6s\"\r\n            begin=\"2.8s\"\r\n            repeatCount=\"indefinite\"\r\n          \/>\r\n        <\/line>\r\n\r\n        <circle class=\"ps4-halo\" cx=\"215\" cy=\"320\" r=\"8\">\r\n          <animate\r\n            attributeName=\"r\"\r\n            values=\"8;8;27;27\"\r\n            keyTimes=\"0;0.34;0.45;1\"\r\n            dur=\"5.6s\"\r\n            begin=\"2.8s\"\r\n            repeatCount=\"indefinite\"\r\n          \/>\r\n          <animate\r\n            attributeName=\"opacity\"\r\n            values=\"0;0;0.9;0;0\"\r\n            keyTimes=\"0;0.33;0.35;0.45;1\"\r\n            dur=\"5.6s\"\r\n            begin=\"2.8s\"\r\n            repeatCount=\"indefinite\"\r\n          \/>\r\n        <\/circle>\r\n\r\n        <circle class=\"ps4-dot\" cx=\"215\" cy=\"320\" r=\"7\">\r\n          <animate\r\n            attributeName=\"r\"\r\n            values=\"7;7;12;7;7\"\r\n            keyTimes=\"0;0.33;0.36;0.44;1\"\r\n            dur=\"5.6s\"\r\n            begin=\"2.8s\"\r\n            repeatCount=\"indefinite\"\r\n          \/>\r\n          <animate\r\n            attributeName=\"fill\"\r\n            values=\"#fff;#fff;#6bd0ff;#fff;#fff\"\r\n            keyTimes=\"0;0.33;0.36;0.44;1\"\r\n            dur=\"5.6s\"\r\n            begin=\"2.8s\"\r\n            repeatCount=\"indefinite\"\r\n          \/>\r\n        <\/circle>\r\n\r\n        <!-- Orbiting verification badge -->\r\n        <g class=\"ps4-tick-orbit\">\r\n          <g transform=\"translate(515 320)\">\r\n            <g class=\"ps4-tick-upright\">\r\n              <circle\r\n                cx=\"0\"\r\n                cy=\"0\"\r\n                r=\"34\"\r\n                fill=\"rgba(3,48,100,.46)\"\r\n                stroke=\"none\"\r\n              \/>\r\n              <circle\r\n                cx=\"0\"\r\n                cy=\"0\"\r\n                r=\"29.5\"\r\n                fill=\"url(#ps4-badge-gradient-shadow-b73)\"\r\n                stroke=\"rgba(112,204,255,.78)\"\r\n                stroke-width=\"2\"\r\n              \/>\r\n              <path\r\n                d=\"m-12 0 8 9 17-20\"\r\n                fill=\"none\"\r\n                stroke=\"#fff\"\r\n                stroke-width=\"5\"\r\n                stroke-linecap=\"round\"\r\n                stroke-linejoin=\"round\"\r\n              \/>\r\n            <\/g>\r\n          <\/g>\r\n        <\/g>\r\n      <\/svg>\r\n\r\n      <!-- Original map icon paths -->\r\n      <svg\r\n        class=\"ps4-custom-map-icon\"\r\n        viewBox=\"35 22 80 105\"\r\n        xmlns=\"http:\/\/www.w3.org\/2000\/svg\"\r\n        aria-hidden=\"true\"\r\n      >\r\n        <path\r\n          fill=\"#1A73E8\"\r\n          stroke=\"none\"\r\n          d=\"M85.1,28.5c-3.2-1-6.6-1.6-10.1-1.6c-10.3,0-19.5,4.7-25.7,12l15.9,13.3L85.1,28.5z\"\r\n        \/>\r\n        <path\r\n          fill=\"#EA4335\"\r\n          stroke=\"none\"\r\n          d=\"M49.3,38.9c-4.9,5.8-7.9,13.4-7.9,21.6c0,6.3,1.3,11.4,3.3,16l20.4-24.2L49.3,38.9z\"\r\n        \/>\r\n        <path\r\n          fill=\"#4285F4\"\r\n          stroke=\"none\"\r\n          d=\"M75,47.6c7.1,0,12.8,5.7,12.8,12.8c0,3.2-1.1,6.1-3,8.3c0,0,10.1-12.1,20-23.8c-4.1-7.8-11.1-13.8-19.6-16.5l-20,23.8C67.5,49.4,71,47.6,75,47.6\"\r\n        \/>\r\n        <path\r\n          fill=\"#FBBC04\"\r\n          stroke=\"none\"\r\n          d=\"M75,73.3c-7.1,0-12.8-5.7-12.8-12.8c0-3.1,1.1-6,3-8.2L44.8,76.5C48.2,84.2,54,90.4,60,98.2l24.8-29.5C82.5,71.5,78.9,73.3,75,73.3\"\r\n        \/>\r\n        <path\r\n          fill=\"#34A853\"\r\n          stroke=\"none\"\r\n          d=\"M84.3,106.3c11.2-17.5,24.3-25.5,24.3-45.8c0-5.6-1.4-10.8-3.8-15.5L60,98.2c1.9,2.5,3.8,5.1,5.7,8.1c6.8,10.5,4.9,16.8,9.3,16.8C79.4,123.1,77.5,116.8,84.3,106.3\"\r\n        \/>\r\n      <\/svg>\r\n    <\/div>\r\n  <\/template>\r\n<\/ps-map-signal-v4>\r\n\r\n<script>\r\n  (() => {\r\n    const tagName = 'ps-map-signal-v4';\r\n\r\n    if (customElements.get(tagName)) return;\r\n\r\n    customElements.define(\r\n      tagName,\r\n      class extends HTMLElement {\r\n        connectedCallback() {\r\n          if (this.shadowRoot) return;\r\n\r\n          const template = this.querySelector('template[data-ps-shadow]');\r\n          if (!template) return;\r\n\r\n          const shadow = this.attachShadow({ mode: 'open' });\r\n          shadow.appendChild(template.content.cloneNode(true));\r\n          template.remove();\r\n        }\r\n      }\r\n    );\r\n  })();\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\n<\/div>\n<div class=\"elementor-element elementor-element-9bd4547 e-con e-atomic-element e-flexbox-base e-9bd4547-ecd95dd \" data-id=\"9bd4547\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"9bd4547\" data-e-type=\"e-flexbox\" data-id=\"9bd4547\">\n    <div class=\"elementor-element elementor-element-2765138 e-flex e-con-boxed e-con e-parent\" data-id=\"2765138\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-cb7748c e-con-full e-flex e-con e-child\" data-id=\"cb7748c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6560282 elementor-widget elementor-widget-heading\" data-id=\"6560282\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">01<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9663a95 elementor-widget elementor-widget-heading\" data-id=\"9663a95\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Algorithmic Dwell-Time Acceleration<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f2285db elementor-widget elementor-widget-text-editor\" data-id=\"f2285db\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Immersive 360\u00b0 experiences increase engagement signals that boost your local ranking and keep prospects on your listing longer.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-194d666 e-con-full e-flex e-con e-child\" data-id=\"194d666\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7f06a3f elementor-widget elementor-widget-html\" data-id=\"7f06a3f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\r\n  PanoSky \u2014 Algorithmic Dwell-Time visual\r\n  Paste this entire file into one Elementor HTML widget.\r\n  Elementor v10 panorama: explicit responsive height with no unused vertical space.\r\n-->\r\n\r\n<style>\r\n  \/* =========================================================\r\n     EASY DESIGN SETTINGS\r\n     The widget inherits your website's global font.\r\n     ========================================================= *\/\r\n  .psv10-dwell-widget {\r\n    \/* Change these visual values whenever needed. *\/\r\n    --psv10-max-height: 350px;\r\n    --psv10-slider-width: 75%;\r\n    --psv10-drag-hint-speed: 3.2s;\r\n    \/* Alignment options: flex-start, center, or flex-end. *\/\r\n    --psv10-horizontal-align: center;\r\n\r\n    --psv10-bg-1: #001331;\r\n    --psv10-bg-2: #001b43;\r\n    --psv10-panel: rgba(0, 20, 52, 0.58);\r\n    --psv10-line: rgba(117, 169, 230, 0.20);\r\n    --psv10-white: #f7f9ff;\r\n    --psv10-muted: rgba(222, 231, 248, 0.68);\r\n    --psv10-blue: #258cff;\r\n    --psv10-cyan: #36d5ff;\r\n    --psv10-orbit-half: 0.35cqw;\r\n    --psv10-radius: 0px;\r\n    --psv10-stage-ratio: 1.565 \/ 1;\r\n\r\n    width: min(100%, calc(var(--psv10-max-height) * 1.565));\r\n    max-width: 100%;\r\n    height: auto;\r\n    min-height: 0;\r\n    aspect-ratio: var(--psv10-stage-ratio);\r\n    margin: 0 auto;\r\n    padding: 0;\r\n    line-height: normal;\r\n    color: var(--psv10-white);\r\n    font-family: inherit;\r\n    display: block;\r\n    position: relative;\r\n    \/* Stops ring glows \/ canvas layers from creating mobile page overflow. *\/\r\n    overflow: hidden;\r\n    overflow: clip;\r\n    container-type: inline-size;\r\n  }\r\n\r\n  .psv10-dwell-widget,\r\n  .psv10-dwell-widget * {\r\n    box-sizing: border-box;\r\n  }\r\n\r\n  .psv10-dwell-stage {\r\n    position: relative;\r\n    width: 100%;\r\n    max-width: none;\r\n    height: 100%;\r\n    min-height: 100%;\r\n    margin: 0;\r\n    padding: 0;\r\n    aspect-ratio: auto;\r\n    container-type: inline-size;\r\n    overflow: hidden;\r\n    overflow: clip;\r\n    isolation: isolate;\r\n    border-radius: var(--psv10-radius);\r\n    background: transparent;\r\n    border: none;\r\n    box-shadow: none;\r\n  }\r\n\r\n  .psv10-dwell-stage::before {\r\n    content: \"\";\r\n    position: absolute;\r\n    inset: 0;\r\n    z-index: -1;\r\n    pointer-events: none;\r\n    display: none;\r\n  }\r\n\r\n  \/* Subtle instruction in the intentionally open top-left area. *\/\r\n  .psv10-drag-hint {\r\n    position: absolute;\r\n    top: 14.5%;\r\n    left: 2.8%;\r\n    z-index: 4;\r\n    width: 28.5%;\r\n    display: flex;\r\n    align-items: center;\r\n    gap: 1.35cqw;\r\n    color: rgba(222, 237, 255, 0.76);\r\n    pointer-events: none;\r\n    user-select: none;\r\n  }\r\n\r\n  .psv10-drag-hint-icon {\r\n    width: 7.2cqw;\r\n    flex: 0 0 7.2cqw;\r\n    color: var(--psv10-cyan);\r\n    filter: drop-shadow(0 0 5px rgba(38, 161, 255, 0.46));\r\n    animation: psv10DragHint var(--psv10-drag-hint-speed) ease-in-out infinite;\r\n  }\r\n\r\n  .psv10-drag-hint-copy {\r\n    display: grid;\r\n    gap: 0.28cqw;\r\n    min-width: 0;\r\n    font-size:2cqw;\r\n    line-height: 1.18;\r\n    letter-spacing: 0.055em;\r\n    text-transform: uppercase;\r\n  }\r\n\r\n  .psv10-drag-hint-copy strong {\r\n    color: rgba(247, 251, 255, 0.94);\r\n    font: inherit;\r\n    font-weight: 600;\r\n  }\r\n\r\n  .psv10-drag-hint-copy span {\r\n    color: rgba(190, 211, 239, 0.58);\r\n    font-size: 1.20cqw;\r\n    letter-spacing: 0.025em;\r\n    text-transform: none;\r\n  }\r\n\r\n  \/* Bottom-left analytics panel *\/\r\n  .psv10-metric-card {\r\n    position: absolute;\r\n    left: 0;\r\n    bottom: 0;\r\n    z-index: 2;\r\n    width: 57.6%;\r\n    height: 56.25%;\r\n    min-height: 0;\r\n    padding: 3.14cqw 3.07cqw;\r\n    border: 1px solid var(--psv10-line);\r\n    border-radius: 2.49cqw;\r\n    background:\r\n      linear-gradient(135deg, rgba(5, 30, 70, 0.58), rgba(0, 13, 42, 0.32));\r\n    box-shadow:\r\n      inset 0 1px 0 rgba(255,255,255,0.025),\r\n      0 24px 80px rgba(0, 5, 20, 0.14);\r\n    backdrop-filter: blur(12px);\r\n    -webkit-backdrop-filter: blur(12px);\r\n  }\r\n\r\n  .psv10-metric-inner {\r\n    position: relative;\r\n    z-index: 1;\r\n    width: 92%;\r\n  }\r\n\r\n  .psv10-metric-label {\r\n    margin: 0 0 1.46cqw;\r\n    color: var(--psv10-muted);\r\n    font-size: 2.2cqw;\r\n    font-weight: 500;\r\n    letter-spacing: 0.035em;\r\n    text-transform: uppercase;\r\n  }\r\n\r\n  .psv10-time-row {\r\n    display: flex;\r\n    align-items: baseline;\r\n    gap: 0.88cqw;\r\n    white-space: nowrap;\r\n  }\r\n\r\n  .psv10-time-value {\r\n    font-size: 6.14cqw;\r\n    font-weight: 300;\r\n    line-height: 0.95;\r\n    letter-spacing: -0.055em;\r\n    font-variant-numeric: tabular-nums;\r\n    text-shadow: 0 0 18px rgba(96, 158, 255, 0.09);\r\n  }\r\n\r\n  .psv10-time-unit {\r\n    color: var(--psv10-muted);\r\n    font-size: 2.34cqw;\r\n    font-weight: 400;\r\n  }\r\n\r\n  .psv10-change-pill {\r\n    display: inline-flex;\r\n    align-items: center;\r\n    gap: 0.95cqw;\r\n    margin-top: 2.70cqw;\r\n    padding: 0.80cqw 1.39cqw;\r\n    border: 1px solid rgba(24, 139, 255, 0.42);\r\n    border-radius: 999px;\r\n    color: var(--psv10-muted);\r\n    font-size: 1.54cqw;\r\n    line-height: 1;\r\n    white-space: nowrap;\r\n    background: rgba(0, 14, 43, 0.36);\r\n  }\r\n\r\n  .psv10-change-arrow {\r\n    width: 1.83cqw;\r\n    height: 2.05cqw;\r\n    color: var(--psv10-cyan);\r\n    filter: drop-shadow(0 0 7px rgba(44, 182, 255, 0.46));\r\n    flex: 0 0 auto;\r\n  }\r\n\r\n  .psv10-change-value {\r\n    color: var(--psv10-cyan);\r\n    font-weight: 600;\r\n    font-variant-numeric: tabular-nums;\r\n  }\r\n\r\n  .psv10-slider-wrap {\r\n    \/* Ends before the circular panorama so the 4:00 label stays visible. *\/\r\n    width: var(--psv10-slider-width);\r\n    margin-top: 4.17cqw;\r\n  }\r\n\r\n  .psv10-progress {\r\n    --progress: 0%;\r\n    position: relative;\r\n    width: 100%;\r\n    height: 0.80cqw;\r\n    border-radius: 999px;\r\n    background: rgba(111, 147, 199, 0.22);\r\n    box-shadow: inset 0 1px 3px rgba(0, 4, 18, 0.38);\r\n  }\r\n\r\n  .psv10-progress-fill {\r\n    position: absolute;\r\n    inset: 0 auto 0 0;\r\n    width: var(--progress);\r\n    border-radius: inherit;\r\n    background: linear-gradient(90deg, var(--psv10-cyan), #1678ff 74%, #2e8dff);\r\n    box-shadow:\r\n      0 0 10px rgba(31, 150, 255, 0.33),\r\n      inset 0 1px 0 rgba(255,255,255,0.38);\r\n  }\r\n\r\n  .psv10-progress-thumb {\r\n    position: absolute;\r\n    top: 50%;\r\n    left: var(--progress);\r\n    width: 1.97cqw;\r\n    aspect-ratio: 1;\r\n    border-radius: 50%;\r\n    transform: translate(-50%, -50%);\r\n    background: #b9e5ff;\r\n    border: 0.44cqw solid #278cff;\r\n    box-shadow:\r\n      0 0 0 2px rgba(36, 133, 255, 0.25),\r\n      0 0 14px rgba(28, 158, 255, 0.66);\r\n  }\r\n\r\n  .psv10-ticks {\r\n    display: flex;\r\n    justify-content: space-between;\r\n    position: relative;\r\n    margin-top: 1.02cqw;\r\n    padding-top: 1.17cqw;\r\n    color: var(--psv10-muted);\r\n    font-size: 1.39cqw;\r\n    font-variant-numeric: tabular-nums;\r\n  }\r\n\r\n  .psv10-ticks::before,\r\n  .psv10-ticks::after,\r\n  .psv10-tick-middle::before {\r\n    content: \"\";\r\n    position: absolute;\r\n    top: 0;\r\n    width: 1px;\r\n    height: 1.24cqw;\r\n    background: rgba(113, 155, 218, 0.16);\r\n  }\r\n\r\n  .psv10-ticks::before { left: 1.3%; }\r\n  .psv10-ticks::after { right: 1.3%; }\r\n  .psv10-tick-middle::before { left: 50%; }\r\n\r\n  \/* Circular media *\/\r\n  .psv10-media-shell {\r\n    position: absolute;\r\n    z-index: 3;\r\n    top: 0;\r\n    right: 0;\r\n    width: 63.8978%;\r\n    aspect-ratio: 1;\r\n    border-radius: 50%;\r\n    filter: drop-shadow(0 26px 50px rgba(0, 5, 20, 0.22));\r\n  }\r\n\r\n  .psv10-ring-outer,\r\n  .psv10-ring-middle,\r\n  .psv10-media-frame,\r\n  .psv10-orbit-svg {\r\n    position: absolute;\r\n    border-radius: 50%;\r\n  }\r\n\r\n  .psv10-ring-outer {\r\n    inset: 0;\r\n    border: 1px solid rgba(31, 102, 198, 0.29);\r\n    box-shadow: 0 0 25px rgba(19, 99, 213, 0.12);\r\n  }\r\n\r\n  .psv10-ring-middle {\r\n    inset: 2.8%;\r\n    border: 1px solid rgba(80, 141, 220, 0.24);\r\n    background:\r\n      radial-gradient(circle, transparent 66%, rgba(31, 83, 153, 0.14) 66.2%, rgba(61, 129, 220, 0.32) 68.5%, rgba(10, 34, 78, 0.55) 71%, transparent 71.3%);\r\n    box-shadow:\r\n      inset 0 0 22px rgba(57, 116, 205, 0.20),\r\n      0 0 18px rgba(27, 101, 214, 0.12);\r\n  }\r\n\r\n  .psv10-media-frame {\r\n    inset: 7.2%;\r\n    overflow: hidden;\r\n    background: #06132a;\r\n    border: 1px solid rgba(176, 218, 255, 0.28);\r\n    box-shadow:\r\n      0 0 0 0.80cqw rgba(48, 95, 162, 0.28),\r\n      0 0 0 1.32cqw rgba(4, 26, 65, 0.62),\r\n      inset 0 0 40px rgba(0, 6, 24, 0.22);\r\n    cursor: grab;\r\n    isolation: isolate;\r\n  }\r\n\r\n  .psv10-media-frame:active { cursor: grabbing; }\r\n\r\n  .psv10-media-frame::after {\r\n    content: \"\";\r\n    position: absolute;\r\n    inset: 0;\r\n    border-radius: inherit;\r\n    pointer-events: none;\r\n    background:\r\n      linear-gradient(135deg, rgba(128, 201, 255, 0.08), transparent 28%),\r\n      radial-gradient(circle at 50% 50%, transparent 61%, rgba(0, 7, 25, 0.28) 100%);\r\n  }\r\n\r\n  .psv10-panorama,\r\n  .psv10-media-frame .pnlm-container,\r\n  .psv10-media-frame .pnlm-render-container,\r\n  .psv10-media-frame .pnlm-ui,\r\n  .psv10-media-frame canvas {\r\n    width: 100%;\r\n    height: 100%;\r\n    border-radius: inherit;\r\n  }\r\n\r\n  .psv10-panorama,\r\n  .psv10-media-frame .pnlm-container {\r\n    overflow: hidden;\r\n    background: #06132a;\r\n    touch-action: pan-y !important;\r\n    -ms-touch-action: pan-y !important;\r\n  }\r\n\r\n  .psv10-media-frame .pnlm-ui {\r\n    overflow: hidden;\r\n  }\r\n\r\n  .psv10-media-frame .pnlm-controls-container,\r\n  .psv10-media-frame .pnlm-compass,\r\n  .psv10-media-frame .pnlm-about-msg {\r\n    display: none !important;\r\n  }\r\n\r\n  .psv10-media-frame .pnlm-load-box {\r\n    top: 50%;\r\n    left: 50%;\r\n    margin: 0;\r\n    transform: translate(-50%, -50%) scale(0.58);\r\n  }\r\n\r\n  .psv10-panorama-error {\r\n    position: absolute;\r\n    inset: 0;\r\n    z-index: 3;\r\n    display: grid;\r\n    place-items: center;\r\n    padding: 18%;\r\n    border-radius: inherit;\r\n    color: rgba(231, 241, 255, 0.82);\r\n    background: radial-gradient(circle, #0a2857, #04142f 72%);\r\n    font-size: 1.4cqw;\r\n    line-height: 1.35;\r\n    text-align: center;\r\n  }\r\n\r\n  \/* The trail and dot rotate together; the badge does not rotate. *\/\r\n  .psv10-orbit-motion {\r\n    position: absolute;\r\n    inset: 0;\r\n    z-index: 5;\r\n    border-radius: 50%;\r\n    pointer-events: none;\r\n    transform: rotate(134deg);\r\n    will-change: transform;\r\n  }\r\n\r\n  .psv10-orbit-svg {\r\n    inset: 0;\r\n    width: 100%;\r\n    height: 100%;\r\n    overflow: visible;\r\n    transform: rotate(-90deg);\r\n  }\r\n\r\n  .psv10-orbit-track {\r\n    fill: none;\r\n    stroke: rgba(56, 132, 232, 0.10);\r\n    stroke-width: 0.48;\r\n  }\r\n\r\n  \/*\r\n     The bright end meets the leading dot at 12 o'clock.\r\n     The trail extends counter-clockwise behind it and gently fades away.\r\n  *\/\r\n  .psv10-orbit-trail-gradient {\r\n    position: absolute;\r\n    inset: 0;\r\n    z-index: 2;\r\n    border-radius: 50%;\r\n    background: conic-gradient(\r\n      from 0deg,\r\n      transparent 0deg 244deg,\r\n      rgba(25, 93, 221, 0.00) 250deg,\r\n      rgba(28, 110, 235, 0.08) 268deg,\r\n      rgba(31, 130, 247, 0.23) 289deg,\r\n      rgba(35, 151, 255, 0.48) 312deg,\r\n      rgba(45, 182, 255, 0.78) 337deg,\r\n      #6be7ff 359.5deg,\r\n      transparent 360deg\r\n    );\r\n    -webkit-mask: radial-gradient(\r\n      circle closest-side,\r\n      transparent calc(96.5% - var(--psv10-orbit-half) - 1px),\r\n      #000 calc(96.5% - var(--psv10-orbit-half)) calc(96.5% + var(--psv10-orbit-half)),\r\n      transparent calc(96.5% + var(--psv10-orbit-half) + 1px)\r\n    );\r\n    mask: radial-gradient(\r\n      circle closest-side,\r\n      transparent calc(96.5% - var(--psv10-orbit-half) - 1px),\r\n      #000 calc(96.5% - var(--psv10-orbit-half)) calc(96.5% + var(--psv10-orbit-half)),\r\n      transparent calc(96.5% + var(--psv10-orbit-half) + 1px)\r\n    );\r\n    filter:\r\n      drop-shadow(0 0 3px rgba(35, 162, 255, 0.70))\r\n      drop-shadow(0 0 8px rgba(31, 119, 255, 0.24));\r\n  }\r\n\r\n  .psv10-orbit-dot {\r\n    position: absolute;\r\n    top: 1.75%;\r\n    left: 50%;\r\n    width: 2.05cqw;\r\n    aspect-ratio: 1;\r\n    z-index: 3;\r\n    border-radius: 50%;\r\n    transform: translate(-50%, -50%);\r\n    background: #d9f5ff;\r\n    border: 0.44cqw solid #278dff;\r\n    box-shadow:\r\n      0 0 0 3px rgba(27, 142, 255, 0.23),\r\n      0 0 18px rgba(44, 181, 255, 0.92),\r\n      0 0 34px rgba(28, 122, 255, 0.50);\r\n  }\r\n\r\n  .psv10-360-badge {\r\n    position: absolute;\r\n    z-index: 8;\r\n    top: 5.5%;\r\n    right: 1.8%;\r\n    display: grid;\r\n    place-items: center;\r\n    width: 17.2%;\r\n    aspect-ratio: 1;\r\n    border-radius: 50%;\r\n    color: var(--psv10-white);\r\n    font-size: 3cqw;\r\n    font-weight: 500;\r\n    font-variant-numeric: tabular-nums;\r\n    background:\r\n      radial-gradient(circle at 36% 25%, rgba(28, 65, 120, 0.75), rgba(0, 14, 43, 0.96) 68%);\r\n    border: 2px solid rgba(74, 196, 255, 0.62);\r\n    box-shadow:\r\n      0 0 0 2px rgba(0, 5, 21, 0.75),\r\n      0 10px 28px rgba(0, 4, 18, 0.35),\r\n      inset 0 0 21px rgba(24, 103, 213, 0.14);\r\n  }\r\n\r\n  @keyframes psv10DragHint {\r\n    0%, 100% { transform: translateX(-0.70cqw); opacity: 0.58; }\r\n    50%      { transform: translateX(0.70cqw); opacity: 1; }\r\n  }\r\n\r\n  @media (prefers-reduced-motion: reduce) {\r\n    .psv10-drag-hint-icon { animation: none; }\r\n  }\r\n<\/style>\r\n\r\n<div class=\"psv10-dwell-widget\" id=\"psv10-dwell-visual\">\r\n  <section class=\"psv10-dwell-stage\" aria-label=\"Average dwell-time analytics visual\">\r\n    <div class=\"psv10-drag-hint\" aria-hidden=\"true\">\r\n      <svg class=\"psv10-drag-hint-icon\" viewBox=\"0 0 64 36\">\r\n        <path d=\"M5 18h54M5 18l8-8M5 18l8 8M59 18l-8-8M59 18l-8 8\"\r\n          fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.4\"\r\n          stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n        <circle cx=\"32\" cy=\"18\" r=\"5.5\" fill=\"#dff8ff\" stroke=\"currentColor\" stroke-width=\"2.2\"\/>\r\n      <\/svg>\r\n      <div class=\"psv10-drag-hint-copy\">\r\n        <strong>Drag to explore<\/strong>\r\n        <span>Look around in 360\u00b0<\/span>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"psv10-metric-card\">\r\n      <div class=\"psv10-metric-inner\">\r\n        <p class=\"psv10-metric-label\">AVG. DWELL TIME<\/p>\r\n\r\n        <div class=\"psv10-time-row\">\r\n          <span class=\"psv10-time-value psv10-counter\" data-target=\"167\" data-format=\"main-time\">00:00<\/span>\r\n          <span class=\"psv10-time-unit\">min<\/span>\r\n        <\/div>\r\n\r\n        <div class=\"psv10-change-pill\">\r\n          <svg class=\"psv10-change-arrow\" viewBox=\"0 0 24 28\" aria-hidden=\"true\">\r\n            <path d=\"M12 25V4M4 12l8-8 8 8\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"3.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n          <\/svg>\r\n          <span class=\"psv10-change-value psv10-counter\" data-target=\"38\" data-format=\"percent\">0%<\/span>\r\n          <span>vs. previous 30 days<\/span>\r\n        <\/div>\r\n\r\n        <div class=\"psv10-slider-wrap\">\r\n          <div class=\"psv10-progress\" role=\"img\" aria-label=\"Average dwell time: 2 minutes 47 seconds out of 4 minutes\">\r\n            <span class=\"psv10-progress-fill\"><\/span>\r\n            <span class=\"psv10-progress-thumb\"><\/span>\r\n          <\/div>\r\n          <div class=\"psv10-ticks\">\r\n            <span>0<\/span>\r\n            <span class=\"psv10-tick-middle\">2:00<\/span>\r\n            <span>4:00<\/span>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"psv10-media-shell\">\r\n      <span class=\"psv10-ring-outer\"><\/span>\r\n      <span class=\"psv10-ring-middle\"><\/span>\r\n\r\n      <div class=\"psv10-media-frame\" id=\"psv10-dwell-media\">\r\n        <div class=\"psv10-panorama\" id=\"psv10-panorama\" aria-label=\"Interactive 360 degree panorama\"><\/div>\r\n      <\/div>\r\n\r\n      <div class=\"psv10-orbit-motion\" aria-hidden=\"true\">\r\n        <svg class=\"psv10-orbit-svg\" viewBox=\"0 0 100 100\">\r\n          <circle class=\"psv10-orbit-track\" cx=\"50\" cy=\"50\" r=\"48.25\" pathLength=\"100\"\/>\r\n        <\/svg>\r\n        <span class=\"psv10-orbit-trail-gradient\"><\/span>\r\n        <span class=\"psv10-orbit-dot\"><\/span>\r\n      <\/div>\r\n\r\n      <div class=\"psv10-360-badge\">\r\n        <span class=\"psv10-counter\" data-target=\"360\" data-format=\"degrees\">0\u00b0<\/span>\r\n      <\/div>\r\n    <\/div>\r\n  <\/section>\r\n<\/div>\r\n\r\n<script>\r\n(() => {\r\n  \/* =========================================================\r\n     EASY PANORAMA + SPEED \/ TIMING SETTINGS\r\n\r\n     panoramaUrl: paste your direct 2:1 equirectangular JPG link\r\n                  between the quotes below.\r\n\r\n     Speed notes:\r\n     - autoRotateSpeed is degrees per second. Negative and positive\r\n       values rotate in opposite directions.\r\n     - all duration \/ delay values are milliseconds (1000 = 1 sec).\r\n     - scrollYawSensitivity controls panorama movement per scroll pixel.\r\n     ========================================================= *\/\r\n  const SETTINGS = {\r\n    panoramaUrl: \"https:\/\/pannellum.org\/images\/lascar.jpg\",\r\n\r\n    \/* Initial panorama view *\/\r\n    initialYaw: -135.4,\r\n    initialPitch: 2.3,\r\n    horizontalFieldOfView: 105,\r\n\r\n    \/* Automatic panorama rotation *\/\r\n    enableAutoRotation: true,\r\n    autoRotateSpeed: -5.15,\r\n    autoRotateRestartDelay: 1500,\r\n\r\n    \/* Page-scroll and touch response *\/\r\n    enablePageScrollYaw: true,\r\n    scrollYawSensitivity: 0.08,\r\n    touchDragSpeed: 1,\r\n\r\n    \/* Orbit position relative to the panorama yaw *\/\r\n    orbitStartAngle: 134,\r\n    orbitYawDirection: 1,\r\n\r\n    \/* Number and slider intro timing *\/\r\n    counterDuration: 1750,\r\n    sliderTarget: 69.58,\r\n    sliderDuration: 1900,\r\n    replayExitRatio: 0.08,\r\n    playEntryRatio: 0.34,\r\n\r\n    \/* Viewer library \u2014 normally leave these unchanged *\/\r\n    pannellumJs: \"https:\/\/cdn.jsdelivr.net\/npm\/pannellum@2.5.7\/build\/pannellum.js\",\r\n    pannellumCss: \"https:\/\/cdn.jsdelivr.net\/npm\/pannellum@2.5.7\/build\/pannellum.css\"\r\n  };\r\n\r\n  const root = document.getElementById(\"psv10-dwell-visual\");\r\n  if (!root || root.dataset.psv10Ready === \"true\") return;\r\n  root.dataset.psv10Ready = \"true\";\r\n\r\n  const STAGE_RATIO = 1.565;\r\n  const stage = root.querySelector(\".psv10-dwell-stage\");\r\n  const widgetContainer = root.parentElement;\r\n  const elementorWidget = root.closest(\".elementor-widget-html\");\r\n  const mediaFrame = root.querySelector(\"#psv10-dwell-media\");\r\n  const panoramaElement = root.querySelector(\"#psv10-panorama\");\r\n  const orbitMotion = root.querySelector(\".psv10-orbit-motion\");\r\n  const counters = [...root.querySelectorAll(\".psv10-counter\")];\r\n  const progress = root.querySelector(\".psv10-progress\");\r\n  const reduceMotion = window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;\r\n  let frameIds = [];\r\n  let isPlayed = false;\r\n  let isWidgetVisible = false;\r\n  let sizeFrame = 0;\r\n  let panoramaViewer = null;\r\n  let panoramaLoaded = false;\r\n  let panoramaFrame = 0;\r\n  let autoRestartTimer = 0;\r\n  let scrollFrame = 0;\r\n  let pendingScrollDelta = 0;\r\n  let lastScrollY = window.scrollY || window.pageYOffset || 0;\r\n\r\n  \/* Explicitly report the artwork height to Elementor on every resize. *\/\r\n  function syncElementorSize() {\r\n    cancelAnimationFrame(sizeFrame);\r\n    sizeFrame = requestAnimationFrame(() => {\r\n      const availableWidth = widgetContainer?.clientWidth || 0;\r\n      if (availableWidth <= 0) return;\r\n\r\n      const maxHeightValue = parseFloat(\r\n        getComputedStyle(root).getPropertyValue(\"--psv10-max-height\")\r\n      ) || 200;\r\n      const measuredWidth = Math.min(availableWidth, maxHeightValue * STAGE_RATIO);\r\n      const measuredHeight = measuredWidth \/ STAGE_RATIO;\r\n      const widthPx = measuredWidth.toFixed(3) + \"px\";\r\n      const heightPx = measuredHeight.toFixed(3) + \"px\";\r\n\r\n      root.style.width = widthPx;\r\n      root.style.height = heightPx;\r\n      root.style.minHeight = heightPx;\r\n      stage.style.height = \"100%\";\r\n      stage.style.minHeight = \"100%\";\r\n\r\n      [widgetContainer, elementorWidget].forEach(element => {\r\n        if (element) element.style.minHeight = heightPx;\r\n      });\r\n\r\n      if (panoramaViewer && panoramaLoaded) panoramaViewer.resize();\r\n    });\r\n  }\r\n\r\n  syncElementorSize();\r\n  requestAnimationFrame(syncElementorSize);\r\n  window.addEventListener(\"load\", syncElementorSize, { once: true });\r\n  window.addEventListener(\"resize\", syncElementorSize, { passive: true });\r\n\r\n  if (\"ResizeObserver\" in window && widgetContainer) {\r\n    const sizeObserver = new ResizeObserver(syncElementorSize);\r\n    sizeObserver.observe(widgetContainer);\r\n  }\r\n\r\n  function loadPannellum() {\r\n    if (!window.__psv10PannellumCssPromise) {\r\n      window.__psv10PannellumCssPromise = new Promise((resolve, reject) => {\r\n        const existingStylesheet = document.getElementById(\"psv10-pannellum-css\");\r\n        const stylesheet = existingStylesheet || document.createElement(\"link\");\r\n\r\n        if (existingStylesheet?.sheet) {\r\n          resolve();\r\n          return;\r\n        }\r\n\r\n        stylesheet.addEventListener(\"load\", resolve, { once: true });\r\n        stylesheet.addEventListener(\"error\", () => {\r\n          reject(new Error(\"The panorama stylesheet could not be loaded.\"));\r\n        }, { once: true });\r\n\r\n        if (!existingStylesheet) {\r\n          stylesheet.id = \"psv10-pannellum-css\";\r\n          stylesheet.rel = \"stylesheet\";\r\n          stylesheet.href = SETTINGS.pannellumCss;\r\n          document.head.appendChild(stylesheet);\r\n        }\r\n      });\r\n    }\r\n\r\n    if (!window.__psv10PannellumPromise && window.pannellum?.viewer) {\r\n      window.__psv10PannellumPromise = Promise.resolve(window.pannellum);\r\n    } else if (!window.__psv10PannellumPromise) {\r\n      window.__psv10PannellumPromise = new Promise((resolve, reject) => {\r\n        const existingScript = [...document.scripts].find(script =>\r\n          script.src === SETTINGS.pannellumJs\r\n        );\r\n        const script = existingScript || document.createElement(\"script\");\r\n\r\n        const ready = () => window.pannellum?.viewer\r\n          ? resolve(window.pannellum)\r\n          : reject(new Error(\"The panorama library loaded without its viewer API.\"));\r\n\r\n        script.addEventListener(\"load\", ready, { once: true });\r\n        script.addEventListener(\"error\", () => {\r\n          reject(new Error(\"The panorama library could not be loaded.\"));\r\n        }, { once: true });\r\n\r\n        if (!existingScript) {\r\n          script.src = SETTINGS.pannellumJs;\r\n          script.async = true;\r\n          document.head.appendChild(script);\r\n        }\r\n      });\r\n    }\r\n\r\n    return Promise.all([\r\n      window.__psv10PannellumCssPromise,\r\n      window.__psv10PannellumPromise\r\n    ]).then(([, pannellumApi]) => pannellumApi);\r\n  }\r\n\r\n  function normalizeYaw(yaw) {\r\n    return ((yaw + 180) % 360 + 360) % 360 - 180;\r\n  }\r\n\r\n  function updateOrbitFromPanorama() {\r\n    if (!root.isConnected) {\r\n      clearTimeout(autoRestartTimer);\r\n      if (panoramaViewer) panoramaViewer.destroy();\r\n      return;\r\n    }\r\n\r\n    if (panoramaViewer && panoramaLoaded) {\r\n      const yaw = panoramaViewer.getYaw();\r\n      const angle = SETTINGS.orbitStartAngle\r\n        + (yaw - SETTINGS.initialYaw) * SETTINGS.orbitYawDirection;\r\n      orbitMotion.style.transform = `rotate(${angle.toFixed(3)}deg)`;\r\n    }\r\n    panoramaFrame = requestAnimationFrame(updateOrbitFromPanorama);\r\n  }\r\n\r\n  function showPanoramaError(message) {\r\n    if (mediaFrame.querySelector(\".psv10-panorama-error\")) return;\r\n    const error = document.createElement(\"div\");\r\n    error.className = \"psv10-panorama-error\";\r\n    error.textContent = message;\r\n    mediaFrame.appendChild(error);\r\n  }\r\n\r\n  function stopAutoRotation() {\r\n    clearTimeout(autoRestartTimer);\r\n    if (\r\n      SETTINGS.enableAutoRotation &&\r\n      panoramaViewer &&\r\n      panoramaLoaded &&\r\n      !reduceMotion\r\n    ) {\r\n      panoramaViewer.stopAutoRotate();\r\n    }\r\n  }\r\n\r\n  function scheduleAutoRotation() {\r\n    clearTimeout(autoRestartTimer);\r\n    if (reduceMotion || !SETTINGS.enableAutoRotation) return;\r\n    autoRestartTimer = window.setTimeout(() => {\r\n      if (panoramaViewer && panoramaLoaded) {\r\n        panoramaViewer.startAutoRotate(\r\n          SETTINGS.autoRotateSpeed,\r\n          panoramaViewer.getPitch()\r\n        );\r\n      }\r\n    }, SETTINGS.autoRotateRestartDelay);\r\n  }\r\n\r\n  function beginPanoramaInteraction() {\r\n    stopAutoRotation();\r\n  }\r\n\r\n  function endPanoramaInteraction() {\r\n    scheduleAutoRotation();\r\n  }\r\n\r\n  function bindPanoramaInteraction() {\r\n    mediaFrame.addEventListener(\"pointerdown\", beginPanoramaInteraction, { passive: true });\r\n    window.addEventListener(\"pointerup\", endPanoramaInteraction, { passive: true });\r\n    window.addEventListener(\"pointercancel\", endPanoramaInteraction, { passive: true });\r\n\r\n    \/\/ Touch events cover older Safari versions that do not emit Pointer Events.\r\n    mediaFrame.addEventListener(\"touchstart\", beginPanoramaInteraction, { passive: true });\r\n    window.addEventListener(\"touchend\", endPanoramaInteraction, { passive: true });\r\n    window.addEventListener(\"touchcancel\", endPanoramaInteraction, { passive: true });\r\n  }\r\n\r\n  function handlePageScroll() {\r\n    const currentScrollY = window.scrollY || window.pageYOffset || 0;\r\n    const delta = currentScrollY - lastScrollY;\r\n    lastScrollY = currentScrollY;\r\n\r\n    if (\r\n      !SETTINGS.enablePageScrollYaw ||\r\n      !isWidgetVisible ||\r\n      !panoramaViewer ||\r\n      !panoramaLoaded ||\r\n      delta === 0\r\n    ) return;\r\n    pendingScrollDelta += delta;\r\n    if (scrollFrame) return;\r\n\r\n    scrollFrame = requestAnimationFrame(() => {\r\n      scrollFrame = 0;\r\n      const scrollDelta = pendingScrollDelta;\r\n      pendingScrollDelta = 0;\r\n\r\n      \/*\r\n         Page scrolling changes yaw without stopping, delaying, or restarting\r\n         automatic rotation. Only direct panorama dragging uses that timer.\r\n      *\/\r\n      panoramaViewer.setYaw(\r\n        normalizeYaw(panoramaViewer.getYaw() + scrollDelta * SETTINGS.scrollYawSensitivity),\r\n        false\r\n      );\r\n    });\r\n  }\r\n\r\n  async function installPanorama() {\r\n    try {\r\n      await loadPannellum();\r\n\r\n      const viewerConfig = {\r\n        type: \"equirectangular\",\r\n        panorama: SETTINGS.panoramaUrl,\r\n        autoLoad: true,\r\n        pitch: SETTINGS.initialPitch,\r\n        yaw: SETTINGS.initialYaw,\r\n        hfov: SETTINGS.horizontalFieldOfView,\r\n        showControls: false,\r\n        showZoomCtrl: false,\r\n        showFullscreenCtrl: false,\r\n        mouseZoom: false,\r\n        draggable: true,\r\n        touchPanSpeedCoeffFactor: SETTINGS.touchDragSpeed,\r\n        keyboardZoom: false,\r\n        disableKeyboardCtrl: true,\r\n        backgroundColor: [3 \/ 255, 17 \/ 255, 43 \/ 255]\r\n      };\r\n\r\n      if (!reduceMotion && SETTINGS.enableAutoRotation) {\r\n        viewerConfig.autoRotate = SETTINGS.autoRotateSpeed;\r\n        viewerConfig.autoRotateInactivityDelay = SETTINGS.autoRotateRestartDelay;\r\n      }\r\n\r\n      panoramaViewer = window.pannellum.viewer(panoramaElement, viewerConfig);\r\n      panoramaViewer.on(\"load\", () => {\r\n        panoramaLoaded = true;\r\n        panoramaViewer.resize();\r\n        if (!reduceMotion && SETTINGS.enableAutoRotation) {\r\n          panoramaViewer.startAutoRotate(SETTINGS.autoRotateSpeed, SETTINGS.initialPitch);\r\n        }\r\n      });\r\n      panoramaViewer.on(\"error\", message => {\r\n        showPanoramaError(String(message || \"The panorama could not be loaded.\"));\r\n      });\r\n\r\n      bindPanoramaInteraction();\r\n      updateOrbitFromPanorama();\r\n    } catch (error) {\r\n      showPanoramaError(\r\n        \"Panorama unavailable. Check the image link and make sure the file allows cross-origin loading.\"\r\n      );\r\n    }\r\n  }\r\n\r\n  window.addEventListener(\"scroll\", handlePageScroll, { passive: true });\r\n\r\n  function easeOutCubic(t) {\r\n    return 1 - Math.pow(1 - t, 3);\r\n  }\r\n\r\n  function formatValue(value, format) {\r\n    \/\/ Time uses completed seconds so it progresses naturally:\r\n    \/\/ 00:00, 00:01 ... 00:59, 01:00 ... 02:47.\r\n    const isTime = format === \"main-time\" || format === \"short-time\";\r\n    const whole = Math.max(0, isTime ? Math.floor(value) : Math.round(value));\r\n    if (format === \"main-time\") {\r\n      const minutes = Math.floor(whole \/ 60);\r\n      const seconds = whole % 60;\r\n      return String(minutes).padStart(2, \"0\") + \":\" + String(seconds).padStart(2, \"0\");\r\n    }\r\n    if (format === \"short-time\") {\r\n      const minutes = Math.floor(whole \/ 60);\r\n      const seconds = whole % 60;\r\n      return minutes + \":\" + String(seconds).padStart(2, \"0\");\r\n    }\r\n    if (format === \"percent\") return whole + \"%\";\r\n    if (format === \"degrees\") return whole + \"\u00b0\";\r\n    return String(whole);\r\n  }\r\n\r\n  function cancelAnimations() {\r\n    frameIds.forEach(cancelAnimationFrame);\r\n    frameIds = [];\r\n  }\r\n\r\n  function resetVisual() {\r\n    cancelAnimations();\r\n    counters.forEach(counter => {\r\n      counter.textContent = formatValue(0, counter.dataset.format);\r\n    });\r\n    progress.style.setProperty(\"--progress\", \"0%\");\r\n  }\r\n\r\n  function animateCounter(element) {\r\n    const target = Number(element.dataset.target || 0);\r\n    const format = element.dataset.format || \"integer\";\r\n    const start = performance.now();\r\n\r\n    function update(now) {\r\n      const elapsed = Math.min((now - start) \/ SETTINGS.counterDuration, 1);\r\n      \/\/ The main dwell-time counter advances linearly like a real clock.\r\n      \/\/ Other counters retain the softer ease-out motion.\r\n      const progressValue = format === \"main-time\" ? elapsed : easeOutCubic(elapsed);\r\n      element.textContent = formatValue(target * progressValue, format);\r\n      if (elapsed === 1) element.textContent = formatValue(target, format);\r\n      if (elapsed < 1) frameIds.push(requestAnimationFrame(update));\r\n    }\r\n    frameIds.push(requestAnimationFrame(update));\r\n  }\r\n\r\n  function animateProgress() {\r\n    const start = performance.now();\r\n\r\n    function update(now) {\r\n      const elapsed = Math.min((now - start) \/ SETTINGS.sliderDuration, 1);\r\n      const value = SETTINGS.sliderTarget * easeOutCubic(elapsed);\r\n      progress.style.setProperty(\"--progress\", value.toFixed(3) + \"%\");\r\n      if (elapsed < 1) frameIds.push(requestAnimationFrame(update));\r\n    }\r\n    frameIds.push(requestAnimationFrame(update));\r\n  }\r\n\r\n  function playVisual() {\r\n    resetVisual();\r\n    \/\/ Allow the zero state to render before the count-up starts.\r\n    frameIds.push(requestAnimationFrame(() => {\r\n      counters.forEach(animateCounter);\r\n      animateProgress();\r\n    }));\r\n  }\r\n\r\n  installPanorama();\r\n  resetVisual();\r\n\r\n  if (reduceMotion) {\r\n    counters.forEach(counter => {\r\n      counter.textContent = formatValue(Number(counter.dataset.target || 0), counter.dataset.format);\r\n    });\r\n    progress.style.setProperty(\"--progress\", SETTINGS.sliderTarget + \"%\");\r\n  }\r\n\r\n  if (!(\"IntersectionObserver\" in window)) {\r\n    isWidgetVisible = true;\r\n    if (!reduceMotion) playVisual();\r\n    return;\r\n  }\r\n\r\n  const observer = new IntersectionObserver(entries => {\r\n    entries.forEach(entry => {\r\n      isWidgetVisible = entry.isIntersecting;\r\n      if (reduceMotion) return;\r\n\r\n      if (entry.intersectionRatio >= SETTINGS.playEntryRatio && !isPlayed) {\r\n        isPlayed = true;\r\n        playVisual();\r\n      } else if (entry.intersectionRatio <= SETTINGS.replayExitRatio && isPlayed) {\r\n        isPlayed = false;\r\n        resetVisual();\r\n      }\r\n    });\r\n  }, { threshold: [0, SETTINGS.replayExitRatio, SETTINGS.playEntryRatio, 0.7] });\r\n\r\n  observer.observe(root);\r\n})();\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\n<\/div>\n<div class=\"elementor-element elementor-element-f33615b e-con e-atomic-element e-flexbox-base e-f33615b-509771b \" data-id=\"f33615b\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"f33615b\" data-e-type=\"e-flexbox\" data-id=\"f33615b\">\n    <div class=\"elementor-element elementor-element-6194b82 e-flex e-con-boxed e-con e-parent\" data-id=\"6194b82\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-d52856f e-con-full e-flex e-con e-child\" data-id=\"d52856f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5bf65be elementor-widget elementor-widget-image\" data-id=\"5bf65be\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"1024\" height=\"702\" src=\"https:\/\/panosky.com\/wp-content\/uploads\/2026\/08\/panosky-street-to-inside-transparent-3k-v2-1024x702.png\" class=\"attachment-large size-large wp-image-2071\" alt=\"\" srcset=\"https:\/\/panosky.com\/wp-content\/uploads\/2026\/08\/panosky-street-to-inside-transparent-3k-v2-1024x702.png 1024w, https:\/\/panosky.com\/wp-content\/uploads\/2026\/08\/panosky-street-to-inside-transparent-3k-v2-300x206.png 300w, https:\/\/panosky.com\/wp-content\/uploads\/2026\/08\/panosky-street-to-inside-transparent-3k-v2-768x526.png 768w, https:\/\/panosky.com\/wp-content\/uploads\/2026\/08\/panosky-street-to-inside-transparent-3k-v2-1536x1052.png 1536w, https:\/\/panosky.com\/wp-content\/uploads\/2026\/08\/panosky-street-to-inside-transparent-3k-v2-2048x1403.png 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-53d0c64 e-con-full e-flex e-con e-child\" data-id=\"53d0c64\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5901671 elementor-widget elementor-widget-heading\" data-id=\"5901671\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">02<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6b942d1 elementor-widget elementor-widget-heading\" data-id=\"6b942d1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Seamless Street-to-Inside Navigation<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-afab7af elementor-widget elementor-widget-text-editor\" data-id=\"afab7af\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Guide customers from the curb to the core. Street View to 360\u00b0 indoor tours create seamless discovery and confidence.<\/p>\t\t\t\t\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\n<\/div>\n<div class=\"elementor-element elementor-element-bad867b e-con e-atomic-element e-flexbox-base e-bad867b-c2d151f \" data-id=\"bad867b\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"bad867b\" data-e-type=\"e-flexbox\" data-id=\"bad867b\">\n    <div class=\"elementor-element elementor-element-f592581 e-flex e-con-boxed e-con e-parent\" data-id=\"f592581\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-596c27d e-con-full e-flex e-con e-child\" data-id=\"596c27d\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-51ff13f elementor-widget elementor-widget-heading\" data-id=\"51ff13f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">03<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c8f5f9e elementor-widget elementor-widget-heading\" data-id=\"c8f5f9e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Absolute Profile Verification &amp; Optimization<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6b66855 elementor-widget elementor-widget-text-editor\" data-id=\"6b66855\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>We verify, enrich, and optimize every element of your Google Business Profile for maximum performance and trust.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-9bbee45 e-con-full e-flex e-con e-child\" data-id=\"9bbee45\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8bf14da elementor-widget elementor-widget-html\" data-id=\"8bf14da\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- ============================================================\r\n     PanoSky Google Profile Signal V4 \u2014 Elementor HTML Widget\r\n     Paste this ENTIRE file into one Elementor HTML widget.\r\n\r\n     EASY SETTINGS:\r\n     - data-image: replace with your image URL\r\n     - Badge width\/height are scale factors; X\/Y are SVG units\r\n     - Paste an optional icon URL for each bottom action\r\n     - Each action icon has its own numeric size control\r\n     - Dot sizes are scale factors; grow percent is route distance\r\n     - All timing values are milliseconds\r\n     - The SVG has an intrinsic 720:430 ratio, so Elementor knows\r\n       its correct height on desktop, tablet, and mobile.\r\n     ============================================================ -->\r\n\r\n<ps-google-profile-signal-v4\r\n  data-image=\"https:\/\/images.unsplash.com\/photo-1554995207-c18c203602cb?q=80&w=2940&auto=format&fit=crop&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D\"\r\n  data-tab-speed=\"1800\"\r\n  data-signal-speed=\"4800\"\r\n  data-hit-speed=\"950\"\r\n  data-star-speed=\"520\"\r\n  data-star-gap=\"140\"\r\n  data-dot-start-size=\"0.6\"\r\n  data-dot-full-size=\"1\"\r\n  data-dot-grow-percent=\"30\"\r\n  data-badge-width=\"1.18\"\r\n  data-badge-height=\"1\"\r\n  data-badge-x=\"0\"\r\n  data-badge-y=\"0\"\r\n  data-call-icon=\"PASTE_CALL_ICON_URL_HERE\"\r\n  data-call-icon-size=\"22\"\r\n  data-directions-icon=\"PASTE_DIRECTIONS_ICON_URL_HERE\"\r\n  data-directions-icon-size=\"22\"\r\n  data-save-icon=\"PASTE_SAVE_ICON_URL_HERE\"\r\n  data-save-icon-size=\"22\"\r\n  data-website-icon=\"PASTE_WEBSITE_ICON_URL_HERE\"\r\n  data-website-icon-size=\"22\"\r\n  style=\"--ps-max-width: 760px;\"\r\n  aria-label=\"Animated Google business profile verification visual\"\r\n>\r\n  <template data-ps-shadow>\r\n    <style>\r\n      :host {\r\n        --ps-max-width: 760px;\r\n        --ps-signal-time: 4800ms;\r\n        --ps-hit-time: 950ms;\r\n        --ps-star-time: 520ms;\r\n        --ps-star-gap: 140ms;\r\n        --ps-badge-width: 1.18;\r\n        --ps-badge-height: 1;\r\n        --ps-badge-x: 0px;\r\n        --ps-badge-y: 0px;\r\n\r\n        display: block;\r\n        width: min(100%, var(--ps-max-width));\r\n        max-width: 100%;\r\n        margin-inline: auto;\r\n        background: transparent;\r\n        line-height: 0;\r\n        overflow: hidden;\r\n        contain: layout style;\r\n      }\r\n\r\n      *,\r\n      *::before,\r\n      *::after {\r\n        box-sizing: border-box;\r\n      }\r\n\r\n      .ps-wrap {\r\n        display: block;\r\n        width: 100%;\r\n        background: transparent;\r\n        line-height: 0;\r\n      }\r\n\r\n      .ps-stage {\r\n        display: block;\r\n        width: 100%;\r\n        height: auto;\r\n        aspect-ratio: 720 \/ 430;\r\n        background: transparent;\r\n        overflow: visible;\r\n        font-family: inherit;\r\n      }\r\n\r\n      .ps-tab {\r\n        cursor: pointer;\r\n        outline: none;\r\n      }\r\n\r\n      .ps-tab text {\r\n        fill: #aebbd0;\r\n        transition:\r\n          fill 420ms ease,\r\n          opacity 420ms ease;\r\n      }\r\n\r\n      .ps-tab line {\r\n        stroke: transparent;\r\n        transition:\r\n          stroke 420ms ease,\r\n          opacity 420ms ease;\r\n      }\r\n\r\n      .ps-tab.is-active text {\r\n        fill: #259fff;\r\n      }\r\n\r\n      .ps-tab.is-active line {\r\n        stroke: #239cff;\r\n        opacity: 1;\r\n      }\r\n\r\n      .ps-star-fill {\r\n        opacity: 0;\r\n        transform-box: fill-box;\r\n        transform-origin: center;\r\n      }\r\n\r\n      .ps-stars.is-playing .ps-star-fill {\r\n        animation: ps-star-fill var(--ps-star-time) cubic-bezier(.2, .85, .24, 1.2) both;\r\n        animation-delay: calc(var(--ps-star-index) * var(--ps-star-gap));\r\n      }\r\n\r\n      .ps-shield-adjust {\r\n        transform-box: fill-box;\r\n        transform-origin: center;\r\n        transform:\r\n          translate(var(--ps-badge-x), var(--ps-badge-y))\r\n          scale(var(--ps-badge-width), var(--ps-badge-height));\r\n      }\r\n\r\n      .ps-shield {\r\n        transform-box: fill-box;\r\n        transform-origin: center;\r\n        filter: drop-shadow(0 7px 12px rgba(0, 74, 178, 0.44));\r\n      }\r\n\r\n      .ps-shield.ps-hit {\r\n        animation: ps-shield-hit var(--ps-hit-time) cubic-bezier(.2, .8, .2, 1);\r\n      }\r\n\r\n      .ps-endpoint .ps-end-badge,\r\n      .ps-endpoint .ps-end-check {\r\n        opacity: 0;\r\n      }\r\n\r\n      .ps-endpoint.ps-hit .ps-end-halo {\r\n        animation: ps-end-halo var(--ps-hit-time) ease-out;\r\n      }\r\n\r\n      .ps-endpoint.ps-hit .ps-end-badge {\r\n        animation: ps-end-badge var(--ps-hit-time) cubic-bezier(.16, .9, .24, 1);\r\n        transform-box: fill-box;\r\n        transform-origin: center;\r\n      }\r\n\r\n      .ps-endpoint.ps-hit .ps-end-check {\r\n        animation: ps-end-check var(--ps-hit-time) ease-out;\r\n        stroke-dasharray: 28;\r\n        stroke-dashoffset: 28;\r\n      }\r\n\r\n      .ps-moving-dot {\r\n        opacity: 0;\r\n        will-change: transform, opacity;\r\n        pointer-events: none;\r\n      }\r\n\r\n      .ps-action-ring {\r\n        fill: rgba(9, 36, 72, .58);\r\n        stroke: rgba(57, 143, 226, .82);\r\n        stroke-width: 1.5;\r\n        vector-effect: non-scaling-stroke;\r\n      }\r\n\r\n      .ps-action-symbol {\r\n        fill: none;\r\n        stroke: #59b9ff;\r\n        stroke-width: 2;\r\n        stroke-linecap: round;\r\n        stroke-linejoin: round;\r\n        vector-effect: non-scaling-stroke;\r\n      }\r\n\r\n      .ps-action-default,\r\n      .ps-action-custom {\r\n        transform-box: fill-box;\r\n        transform-origin: center;\r\n      }\r\n\r\n      .ps-action-custom {\r\n        display: none;\r\n      }\r\n\r\n      .ps-action:hover .ps-action-ring {\r\n        stroke: #57b9ff;\r\n      }\r\n\r\n      .ps-action:hover .ps-action-symbol {\r\n        stroke: #7acbff;\r\n      }\r\n\r\n      @keyframes ps-star-fill {\r\n        0% {\r\n          opacity: 0;\r\n          transform: scale(.34);\r\n        }\r\n        62% {\r\n          opacity: 1;\r\n          transform: scale(1.16);\r\n        }\r\n        100% {\r\n          opacity: 1;\r\n          transform: scale(1);\r\n        }\r\n      }\r\n\r\n      @keyframes ps-shield-hit {\r\n        0%, 100% {\r\n          transform: scale(1);\r\n          filter: drop-shadow(0 7px 12px rgba(0, 74, 178, .44));\r\n        }\r\n        35% {\r\n          transform: scale(1.09);\r\n          filter:\r\n            drop-shadow(0 0 8px rgba(58, 182, 255, 1))\r\n            drop-shadow(0 0 20px rgba(30, 140, 255, .95));\r\n        }\r\n        62% {\r\n          transform: scale(1.025);\r\n          filter: drop-shadow(0 0 11px rgba(58, 182, 255, .72));\r\n        }\r\n      }\r\n\r\n      @keyframes ps-end-halo {\r\n        0% {\r\n          r: 13;\r\n          opacity: 0;\r\n          stroke-width: 4;\r\n        }\r\n        28% {\r\n          opacity: .94;\r\n        }\r\n        100% {\r\n          r: 35;\r\n          opacity: 0;\r\n          stroke-width: 1;\r\n        }\r\n      }\r\n\r\n      @keyframes ps-end-badge {\r\n        0% {\r\n          opacity: 0;\r\n          transform: scale(.42);\r\n        }\r\n        28% {\r\n          opacity: 1;\r\n          transform: scale(1.14);\r\n        }\r\n        52%, 78% {\r\n          opacity: 1;\r\n          transform: scale(1);\r\n        }\r\n        100% {\r\n          opacity: 0;\r\n          transform: scale(.9);\r\n        }\r\n      }\r\n\r\n      @keyframes ps-end-check {\r\n        0%, 12% {\r\n          opacity: 0;\r\n          stroke-dashoffset: 28;\r\n        }\r\n        42%, 78% {\r\n          opacity: 1;\r\n          stroke-dashoffset: 0;\r\n        }\r\n        100% {\r\n          opacity: 0;\r\n          stroke-dashoffset: 0;\r\n        }\r\n      }\r\n\r\n      @media (prefers-reduced-motion: reduce) {\r\n        .ps-star-fill {\r\n          opacity: 1 !important;\r\n          transform: none !important;\r\n          animation: none !important;\r\n        }\r\n\r\n        .ps-shield,\r\n        .ps-endpoint,\r\n        .ps-moving-dot {\r\n          animation: none !important;\r\n        }\r\n      }\r\n    <\/style>\r\n\r\n    <div class=\"ps-wrap\">\r\n      <svg\r\n        class=\"ps-stage\"\r\n        viewBox=\"0 0 720 430\"\r\n        xmlns=\"http:\/\/www.w3.org\/2000\/svg\"\r\n        aria-hidden=\"true\"\r\n      >\r\n        <defs>\r\n          <clipPath id=\"ps-profile-image-clip-v4-a83\">\r\n            <rect x=\"24\" y=\"18\" width=\"442\" height=\"174\" rx=\"22\"\/>\r\n          <\/clipPath>\r\n\r\n          <clipPath id=\"ps-profile-card-clip-v4-a84\">\r\n            <rect x=\"24\" y=\"18\" width=\"442\" height=\"392\" rx=\"22\"\/>\r\n          <\/clipPath>\r\n\r\n          <linearGradient id=\"ps-image-fade-v4-b57\" x1=\"0\" y1=\"0\" x2=\"0\" y2=\"1\">\r\n            <stop offset=\"0.54\" stop-color=\"#061a36\" stop-opacity=\"0\"\/>\r\n            <stop offset=\"1\" stop-color=\"#061a36\" stop-opacity=\".82\"\/>\r\n          <\/linearGradient>\r\n\r\n          <linearGradient id=\"ps-card-body-v4-c29\" x1=\"0\" y1=\"0\" x2=\"1\" y2=\"1\">\r\n            <stop offset=\"0\" stop-color=\"#071f41\"\/>\r\n            <stop offset=\"1\" stop-color=\"#04162f\"\/>\r\n          <\/linearGradient>\r\n\r\n          <linearGradient id=\"ps-route-gradient-v4-d91\" x1=\"466\" y1=\"310\" x2=\"655\" y2=\"108\" gradientUnits=\"userSpaceOnUse\">\r\n            <stop offset=\"0\" stop-color=\"#126fe8\" stop-opacity=\".34\"\/>\r\n            <stop offset=\".48\" stop-color=\"#159cff\"\/>\r\n            <stop offset=\"1\" stop-color=\"#72d8ff\"\/>\r\n          <\/linearGradient>\r\n\r\n          <linearGradient id=\"ps-badge-gradient-v4-e46\" x1=\"396\" y1=\"171\" x2=\"466\" y2=\"257\" gradientUnits=\"userSpaceOnUse\">\r\n            <stop offset=\"0\" stop-color=\"#2daeff\"\/>\r\n            <stop offset=\"1\" stop-color=\"#0865e8\"\/>\r\n          <\/linearGradient>\r\n\r\n          <linearGradient id=\"ps-rating-gradient-v4-f14\" x1=\"43\" y1=\"202\" x2=\"177\" y2=\"202\" gradientUnits=\"userSpaceOnUse\">\r\n            <stop offset=\"0\" stop-color=\"#ffd56b\"\/>\r\n            <stop offset=\"1\" stop-color=\"#efa836\"\/>\r\n          <\/linearGradient>\r\n\r\n          <radialGradient id=\"ps-end-gradient-v4-g68\" cx=\".35\" cy=\".3\" r=\".82\">\r\n            <stop offset=\"0\" stop-color=\"#a8ebff\"\/>\r\n            <stop offset=\"1\" stop-color=\"#168cff\"\/>\r\n          <\/radialGradient>\r\n\r\n          <filter id=\"ps-soft-shadow-v4-h32\" x=\"-30%\" y=\"-30%\" width=\"160%\" height=\"180%\">\r\n            <feDropShadow dx=\"0\" dy=\"8\" stdDeviation=\"8\" flood-color=\"#001027\" flood-opacity=\".58\"\/>\r\n          <\/filter>\r\n\r\n          <filter id=\"ps-route-glow-v4-j75\" x=\"-80%\" y=\"-80%\" width=\"260%\" height=\"260%\">\r\n            <feGaussianBlur stdDeviation=\"2.2\" result=\"blur\"\/>\r\n            <feMerge>\r\n              <feMergeNode in=\"blur\"\/>\r\n              <feMergeNode in=\"SourceGraphic\"\/>\r\n            <\/feMerge>\r\n          <\/filter>\r\n\r\n          <symbol id=\"ps-star-shape-v4-k21\" viewBox=\"-11 -11 22 22\">\r\n            <path d=\"M0-10 2.5-3.3 9.7-3 4.1 1.5 6 8.5 0 4.5-6 8.5-4.1 1.5-9.7-3-2.5-3.3Z\"\/>\r\n          <\/symbol>\r\n        <\/defs>\r\n\r\n        <!-- Route starts exactly where the horizontal card divider ends. -->\r\n        <path\r\n          id=\"ps-motion-path-v4\"\r\n          d=\"M466 315 C535 315 562 262 585 205 C606 154 626 121 655 108\"\r\n          fill=\"none\"\r\n          stroke=\"rgba(33,133,235,.12)\"\r\n          stroke-width=\"6\"\r\n          stroke-linecap=\"round\"\r\n        \/>\r\n        <path\r\n          d=\"M466 315 C535 315 562 262 585 205 C606 154 626 121 655 108\"\r\n          fill=\"none\"\r\n          stroke=\"url(#ps-route-gradient-v4-d91)\"\r\n          stroke-width=\"2.2\"\r\n          stroke-linecap=\"round\"\r\n          filter=\"url(#ps-route-glow-v4-j75)\"\r\n        \/>\r\n\r\n        <!-- End dot that temporarily becomes a verified tick badge -->\r\n        <g class=\"ps-endpoint\" transform=\"translate(655 108)\">\r\n          <circle class=\"ps-end-halo\" cx=\"0\" cy=\"0\" r=\"13\" fill=\"none\" stroke=\"#58c9ff\" stroke-width=\"3\" opacity=\"0\"\/>\r\n          <circle cx=\"0\" cy=\"0\" r=\"16\" fill=\"rgba(22,140,255,.14)\"\/>\r\n          <circle cx=\"0\" cy=\"0\" r=\"9\" fill=\"#93ddff\" filter=\"url(#ps-route-glow-v4-j75)\"\/>\r\n          <circle class=\"ps-end-badge\" cx=\"0\" cy=\"0\" r=\"18\" fill=\"url(#ps-end-gradient-v4-g68)\" stroke=\"#8edfff\" stroke-width=\"2\"\/>\r\n          <path\r\n            class=\"ps-end-check\"\r\n            d=\"m-8 0 5.2 5.4L8.5-7\"\r\n            fill=\"none\"\r\n            stroke=\"#fff\"\r\n            stroke-width=\"4\"\r\n            stroke-linecap=\"round\"\r\n            stroke-linejoin=\"round\"\r\n          \/>\r\n        <\/g>\r\n\r\n        <!-- Moving signal dot; JavaScript places it on the route path -->\r\n        <g class=\"ps-moving-dot\">\r\n          <circle cx=\"0\" cy=\"0\" r=\"13\" fill=\"rgba(30,158,255,.2)\"\/>\r\n          <circle cx=\"0\" cy=\"0\" r=\"6\" fill=\"#8fe1ff\" filter=\"url(#ps-route-glow-v4-j75)\"\/>\r\n        <\/g>\r\n\r\n        <!-- Opaque profile card -->\r\n        <rect\r\n          x=\"24\"\r\n          y=\"18\"\r\n          width=\"442\"\r\n          height=\"392\"\r\n          rx=\"22\"\r\n          fill=\"url(#ps-card-body-v4-c29)\"\r\n          stroke=\"rgba(113,158,211,.26)\"\r\n          stroke-width=\"2\"\r\n          filter=\"url(#ps-soft-shadow-v4-h32)\"\r\n        \/>\r\n\r\n        <!-- Image fallback and linked image -->\r\n        <rect x=\"24\" y=\"18\" width=\"442\" height=\"174\" rx=\"22\" fill=\"#0b274d\"\/>\r\n        <image\r\n          class=\"ps-profile-image\"\r\n          x=\"24\"\r\n          y=\"18\"\r\n          width=\"442\"\r\n          height=\"174\"\r\n          preserveAspectRatio=\"xMidYMid slice\"\r\n          clip-path=\"url(#ps-profile-image-clip-v4-a83)\"\r\n        \/>\r\n        <rect\r\n          x=\"24\"\r\n          y=\"18\"\r\n          width=\"442\"\r\n          height=\"174\"\r\n          rx=\"22\"\r\n          fill=\"url(#ps-image-fade-v4-b57)\"\r\n          pointer-events=\"none\"\r\n        \/>\r\n        <rect\r\n          x=\"24\"\r\n          y=\"174\"\r\n          width=\"442\"\r\n          height=\"236\"\r\n          fill=\"url(#ps-card-body-v4-c29)\"\r\n          clip-path=\"url(#ps-profile-card-clip-v4-a84)\"\r\n        \/>\r\n\r\n        <!-- Five-star loading animation -->\r\n        <g class=\"ps-stars\">\r\n          <g fill=\"rgba(167,184,205,.24)\" stroke=\"rgba(190,206,226,.28)\" stroke-width=\"1\">\r\n            <use href=\"#ps-star-shape-v4-k21\" x=\"44\" y=\"193\" width=\"22\" height=\"22\"\/>\r\n            <use href=\"#ps-star-shape-v4-k21\" x=\"72\" y=\"193\" width=\"22\" height=\"22\"\/>\r\n            <use href=\"#ps-star-shape-v4-k21\" x=\"100\" y=\"193\" width=\"22\" height=\"22\"\/>\r\n            <use href=\"#ps-star-shape-v4-k21\" x=\"128\" y=\"193\" width=\"22\" height=\"22\"\/>\r\n            <use href=\"#ps-star-shape-v4-k21\" x=\"156\" y=\"193\" width=\"22\" height=\"22\"\/>\r\n          <\/g>\r\n\r\n          <g fill=\"url(#ps-rating-gradient-v4-f14)\" stroke=\"#ffcf5e\" stroke-width=\".7\">\r\n            <use class=\"ps-star-fill\" style=\"--ps-star-index:0\" href=\"#ps-star-shape-v4-k21\" x=\"44\" y=\"193\" width=\"22\" height=\"22\"\/>\r\n            <use class=\"ps-star-fill\" style=\"--ps-star-index:1\" href=\"#ps-star-shape-v4-k21\" x=\"72\" y=\"193\" width=\"22\" height=\"22\"\/>\r\n            <use class=\"ps-star-fill\" style=\"--ps-star-index:2\" href=\"#ps-star-shape-v4-k21\" x=\"100\" y=\"193\" width=\"22\" height=\"22\"\/>\r\n            <use class=\"ps-star-fill\" style=\"--ps-star-index:3\" href=\"#ps-star-shape-v4-k21\" x=\"128\" y=\"193\" width=\"22\" height=\"22\"\/>\r\n            <use class=\"ps-star-fill\" style=\"--ps-star-index:4\" href=\"#ps-star-shape-v4-k21\" x=\"156\" y=\"193\" width=\"22\" height=\"22\"\/>\r\n          <\/g>\r\n        <\/g>\r\n\r\n        <!-- Minimal listing-information lines -->\r\n        <rect x=\"45\" y=\"226\" width=\"148\" height=\"5\" rx=\"2.5\" fill=\"rgba(150,171,199,.22)\"\/>\r\n        <rect x=\"45\" y=\"226\" width=\"88\" height=\"5\" rx=\"2.5\" fill=\"url(#ps-route-gradient-v4-d91)\"\/>\r\n        <rect x=\"45\" y=\"238\" width=\"160\" height=\"5\" rx=\"2.5\" fill=\"rgba(150,171,199,.24)\"\/>\r\n        <rect x=\"45\" y=\"250\" width=\"128\" height=\"5\" rx=\"2.5\" fill=\"rgba(150,171,199,.16)\"\/>\r\n\r\n        <!-- Shield verification badge -->\r\n        <g class=\"ps-shield-adjust\">\r\n          <g class=\"ps-shield\">\r\n            <path\r\n              d=\"M390 180 C405 180 420 172 430 164 C440 172 455 180 470 180 L470 217 C470 247 451 269 430 279 C409 269 390 247 390 217 Z\"\r\n              fill=\"url(#ps-badge-gradient-v4-e46)\"\r\n              stroke=\"rgba(103,199,255,.62)\"\r\n              stroke-width=\"2\"\r\n              stroke-linejoin=\"round\"\r\n              vector-effect=\"non-scaling-stroke\"\r\n            \/>\r\n            <path\r\n              d=\"m412 216 13 13 25-29\"\r\n              fill=\"none\"\r\n              stroke=\"#fff\"\r\n              stroke-width=\"6\"\r\n              stroke-linecap=\"round\"\r\n              stroke-linejoin=\"round\"\r\n              vector-effect=\"non-scaling-stroke\"\r\n            \/>\r\n          <\/g>\r\n        <\/g>\r\n\r\n        <!-- Rhythmically changing tabs -->\r\n        <g class=\"ps-tab is-active\" data-tab=\"0\" tabindex=\"0\">\r\n          <text x=\"76\" y=\"291\" text-anchor=\"middle\" font-size=\"13.5\" font-weight=\"700\" letter-spacing=\".25\">OVERVIEW<\/text>\r\n          <line x1=\"36\" y1=\"306\" x2=\"116\" y2=\"306\" stroke-width=\"4\" stroke-linecap=\"round\"\/>\r\n        <\/g>\r\n\r\n        <g class=\"ps-tab\" data-tab=\"1\" tabindex=\"0\">\r\n          <text x=\"181\" y=\"291\" text-anchor=\"middle\" font-size=\"13.5\" font-weight=\"700\" letter-spacing=\".25\">PHOTOS<\/text>\r\n          <line x1=\"151\" y1=\"306\" x2=\"211\" y2=\"306\" stroke-width=\"4\" stroke-linecap=\"round\"\/>\r\n        <\/g>\r\n\r\n        <g class=\"ps-tab\" data-tab=\"2\" tabindex=\"0\">\r\n          <text x=\"286\" y=\"291\" text-anchor=\"middle\" font-size=\"13.5\" font-weight=\"700\" letter-spacing=\".25\">REVIEWS<\/text>\r\n          <line x1=\"251\" y1=\"306\" x2=\"321\" y2=\"306\" stroke-width=\"4\" stroke-linecap=\"round\"\/>\r\n        <\/g>\r\n\r\n        <g class=\"ps-tab\" data-tab=\"3\" tabindex=\"0\">\r\n          <text x=\"390\" y=\"291\" text-anchor=\"middle\" font-size=\"13.5\" font-weight=\"700\" letter-spacing=\".25\">ABOUT<\/text>\r\n          <line x1=\"362\" y1=\"306\" x2=\"418\" y2=\"306\" stroke-width=\"4\" stroke-linecap=\"round\"\/>\r\n        <\/g>\r\n\r\n        <line x1=\"24\" y1=\"315\" x2=\"466\" y2=\"315\" stroke=\"rgba(137,163,195,.18)\" stroke-width=\"2\"\/>\r\n\r\n        <!-- Bottom action icons -->\r\n        <g class=\"ps-action\" data-action-key=\"call\" transform=\"translate(77 351)\">\r\n          <circle class=\"ps-action-ring\" cx=\"0\" cy=\"0\" r=\"25\"\/>\r\n          <g class=\"ps-action-default\">\r\n            <path class=\"ps-action-symbol\" d=\"M-8.5-10h4l2.1 5.2-2.7 1.7a16.8 16.8 0 0 0 8.2 8.2l1.7-2.7L10 4.5v4c0 1.1-.9 2-2 2A18.5 18.5 0 0 1-10.5-8c0-1.1.9-2 2-2Z\"\/>\r\n          <\/g>\r\n          <image class=\"ps-action-custom\" preserveAspectRatio=\"xMidYMid meet\"\/>\r\n          <text x=\"0\" y=\"46\" text-anchor=\"middle\" fill=\"#d7e2f0\" font-size=\"12\" font-weight=\"650\">CALL<\/text>\r\n        <\/g>\r\n\r\n        <g class=\"ps-action\" data-action-key=\"directions\" transform=\"translate(181 351)\">\r\n          <circle class=\"ps-action-ring\" cx=\"0\" cy=\"0\" r=\"25\"\/>\r\n          <g class=\"ps-action-default\">\r\n            <path class=\"ps-action-symbol\" d=\"M0-11 11 0 0 11-11 0Z M-4 3v-4h7 M3-1 0-4 M3-1 0 2\"\/>\r\n          <\/g>\r\n          <image class=\"ps-action-custom\" preserveAspectRatio=\"xMidYMid meet\"\/>\r\n          <text x=\"0\" y=\"46\" text-anchor=\"middle\" fill=\"#d7e2f0\" font-size=\"12\" font-weight=\"650\">DIRECTIONS<\/text>\r\n        <\/g>\r\n\r\n        <g class=\"ps-action\" data-action-key=\"save\" transform=\"translate(286 351)\">\r\n          <circle class=\"ps-action-ring\" cx=\"0\" cy=\"0\" r=\"25\"\/>\r\n          <g class=\"ps-action-default\">\r\n            <path class=\"ps-action-symbol\" d=\"M-7-10H7a2 2 0 0 1 2 2v18L0 5.2-9 10V-8a2 2 0 0 1 2-2Z\"\/>\r\n          <\/g>\r\n          <image class=\"ps-action-custom\" preserveAspectRatio=\"xMidYMid meet\"\/>\r\n          <text x=\"0\" y=\"46\" text-anchor=\"middle\" fill=\"#d7e2f0\" font-size=\"12\" font-weight=\"650\">SAVE<\/text>\r\n        <\/g>\r\n\r\n        <g class=\"ps-action\" data-action-key=\"website\" transform=\"translate(390 351)\">\r\n          <circle class=\"ps-action-ring\" cx=\"0\" cy=\"0\" r=\"25\"\/>\r\n          <g class=\"ps-action-default\">\r\n            <circle class=\"ps-action-symbol\" cx=\"0\" cy=\"0\" r=\"10.5\"\/>\r\n            <path class=\"ps-action-symbol\" d=\"M-10.5 0h21M0-10.5c3.2 3.2 4.4 6.8 4.4 10.5S3.2 7.3 0 10.5M0-10.5C-3.2-7.3-4.4-3.7-4.4 0S-3.2 7.3 0 10.5\"\/>\r\n          <\/g>\r\n          <image class=\"ps-action-custom\" preserveAspectRatio=\"xMidYMid meet\"\/>\r\n          <text x=\"0\" y=\"46\" text-anchor=\"middle\" fill=\"#d7e2f0\" font-size=\"12\" font-weight=\"650\">WEBSITE<\/text>\r\n        <\/g>\r\n      <\/svg>\r\n    <\/div>\r\n  <\/template>\r\n<\/ps-google-profile-signal-v4>\r\n\r\n<script>\r\n  (() => {\r\n    const tagName = 'ps-google-profile-signal-v4';\r\n\r\n    if (customElements.get(tagName)) return;\r\n\r\n    customElements.define(\r\n      tagName,\r\n      class extends HTMLElement {\r\n        connectedCallback() {\r\n          if (!this.shadowRoot) {\r\n            this.initializeComponent();\r\n          }\r\n\r\n          this.startAnimations();\r\n        }\r\n\r\n        disconnectedCallback() {\r\n          this.stopAnimations();\r\n        }\r\n\r\n        initializeComponent() {\r\n          const template = this.querySelector('template[data-ps-shadow]');\r\n          if (!template) return;\r\n\r\n          const shadow = this.attachShadow({ mode: 'open' });\r\n          shadow.appendChild(template.content.cloneNode(true));\r\n          template.remove();\r\n\r\n          const imageUrl = this.getAttribute('data-image') || '';\r\n          const image = shadow.querySelector('.ps-profile-image');\r\n\r\n          if (\r\n            image &&\r\n            imageUrl &&\r\n            !imageUrl.includes('PASTE_YOUR_IMAGE_URL_HERE')\r\n          ) {\r\n            image.setAttribute('href', imageUrl);\r\n          }\r\n\r\n          this.signalSpeed = this.readNumber('data-signal-speed', 4800, 1200);\r\n          this.tabSpeed = this.readNumber('data-tab-speed', 1800, 350);\r\n          this.hitSpeed = this.readNumber('data-hit-speed', 950, 300);\r\n          this.starSpeed = this.readNumber('data-star-speed', 520, 120);\r\n          this.starGap = this.readNumber('data-star-gap', 140, 0);\r\n\r\n          this.dotStartSize = this.readBoundedNumber(\r\n            'data-dot-start-size',\r\n            0.02,\r\n            0,\r\n            2\r\n          );\r\n          this.dotFullSize = this.readBoundedNumber(\r\n            'data-dot-full-size',\r\n            1,\r\n            0.1,\r\n            3\r\n          );\r\n          this.dotGrowPortion = this.readBoundedNumber(\r\n            'data-dot-grow-percent',\r\n            45,\r\n            5,\r\n            100\r\n          ) \/ 100;\r\n\r\n          this.badgeWidth = this.readBoundedNumber('data-badge-width', 1.18, 0.55, 2);\r\n          this.badgeHeight = this.readBoundedNumber('data-badge-height', 1, 0.55, 2);\r\n          this.badgeX = this.readSignedNumber('data-badge-x', 0);\r\n          this.badgeY = this.readSignedNumber('data-badge-y', 0);\r\n\r\n          this.style.setProperty('--ps-signal-time', this.signalSpeed + 'ms');\r\n          this.style.setProperty('--ps-hit-time', this.hitSpeed + 'ms');\r\n          this.style.setProperty('--ps-star-time', this.starSpeed + 'ms');\r\n          this.style.setProperty('--ps-star-gap', this.starGap + 'ms');\r\n          this.style.setProperty('--ps-badge-width', this.badgeWidth);\r\n          this.style.setProperty('--ps-badge-height', this.badgeHeight);\r\n          this.style.setProperty('--ps-badge-x', this.badgeX + 'px');\r\n          this.style.setProperty('--ps-badge-y', this.badgeY + 'px');\r\n\r\n          this.setupActionIcons(shadow);\r\n\r\n          this.routePath = shadow.querySelector('#ps-motion-path-v4');\r\n          this.movingDot = shadow.querySelector('.ps-moving-dot');\r\n          this.endpoint = shadow.querySelector('.ps-endpoint');\r\n          this.shield = shadow.querySelector('.ps-shield');\r\n          this.stars = shadow.querySelector('.ps-stars');\r\n          this.tabs = [...shadow.querySelectorAll('.ps-tab')];\r\n          this.activeTab = 0;\r\n          this.lastHitCycle = -1;\r\n\r\n          this.tabs.forEach((tab, index) => {\r\n            const activate = () => {\r\n              this.activeTab = index;\r\n              this.renderTabs();\r\n              this.restartTabTimer();\r\n            };\r\n\r\n            tab.addEventListener('click', activate);\r\n            tab.addEventListener('keydown', event => {\r\n              if (event.key === 'Enter' || event.key === ' ') {\r\n                event.preventDefault();\r\n                activate();\r\n              }\r\n            });\r\n          });\r\n\r\n          this.renderTabs();\r\n        }\r\n\r\n        readNumber(attribute, fallback, minimum) {\r\n          const value = Number.parseFloat(this.getAttribute(attribute));\r\n          return Number.isFinite(value) ? Math.max(minimum, value) : fallback;\r\n        }\r\n\r\n        readBoundedNumber(attribute, fallback, minimum, maximum) {\r\n          const value = Number.parseFloat(this.getAttribute(attribute));\r\n          if (!Number.isFinite(value)) return fallback;\r\n          return Math.min(maximum, Math.max(minimum, value));\r\n        }\r\n\r\n        readSignedNumber(attribute, fallback) {\r\n          const value = Number.parseFloat(this.getAttribute(attribute));\r\n          return Number.isFinite(value) ? value : fallback;\r\n        }\r\n\r\n        setupActionIcons(shadow) {\r\n          const actionKeys = ['call', 'directions', 'save', 'website'];\r\n\r\n          actionKeys.forEach(key => {\r\n            const action = shadow.querySelector('[data-action-key=\"' + key + '\"]');\r\n            if (!action) return;\r\n\r\n            const defaultIcon = action.querySelector('.ps-action-default');\r\n            const customIcon = action.querySelector('.ps-action-custom');\r\n            const size = this.readBoundedNumber(\r\n              'data-' + key + '-icon-size',\r\n              22,\r\n              10,\r\n              38\r\n            );\r\n            const url = (this.getAttribute('data-' + key + '-icon') || '').trim();\r\n            const hasCustomIcon = Boolean(url) && !url.includes('PASTE_');\r\n\r\n            if (hasCustomIcon && customIcon) {\r\n              customIcon.setAttribute('href', url);\r\n              customIcon.setAttribute('x', String(-size \/ 2));\r\n              customIcon.setAttribute('y', String(-size \/ 2));\r\n              customIcon.setAttribute('width', String(size));\r\n              customIcon.setAttribute('height', String(size));\r\n              customIcon.style.display = 'block';\r\n              if (defaultIcon) defaultIcon.style.display = 'none';\r\n              return;\r\n            }\r\n\r\n            if (customIcon) customIcon.style.display = 'none';\r\n            if (defaultIcon) {\r\n              defaultIcon.style.display = '';\r\n              defaultIcon.setAttribute('transform', 'scale(' + (size \/ 22) + ')');\r\n            }\r\n          });\r\n        }\r\n\r\n        startAnimations() {\r\n          if (!this.shadowRoot || !this.routePath || !this.movingDot) return;\r\n\r\n          this.stopAnimations();\r\n          this.motionStart = performance.now();\r\n          this.lastHitCycle = -1;\r\n          this.motionFrame = requestAnimationFrame(time => this.animateSignal(time));\r\n          this.restartTabTimer();\r\n          this.observeStars();\r\n        }\r\n\r\n        stopAnimations() {\r\n          if (this.motionFrame) {\r\n            cancelAnimationFrame(this.motionFrame);\r\n            this.motionFrame = 0;\r\n          }\r\n\r\n          if (this.tabTimer) {\r\n            clearInterval(this.tabTimer);\r\n            this.tabTimer = 0;\r\n          }\r\n\r\n          if (this.hitTimer) {\r\n            clearTimeout(this.hitTimer);\r\n            this.hitTimer = 0;\r\n          }\r\n\r\n          if (this.starObserver) {\r\n            this.starObserver.disconnect();\r\n            this.starObserver = null;\r\n          }\r\n        }\r\n\r\n        animateSignal(now) {\r\n          const elapsed = Math.max(0, now - this.motionStart);\r\n          const cycle = Math.floor(elapsed \/ this.signalSpeed);\r\n          const phase = (elapsed % this.signalSpeed) \/ this.signalSpeed;\r\n          const travelStart = 0.06;\r\n          const travelEnd = 0.72;\r\n\r\n          let progress;\r\n          let opacity;\r\n\r\n          if (phase < travelStart) {\r\n            progress = 0;\r\n            opacity = 0;\r\n          } else if (phase <= travelEnd) {\r\n            const linear = (phase - travelStart) \/ (travelEnd - travelStart);\r\n            progress = linear * linear * (3 - 2 * linear);\r\n            opacity = 0;\r\n          } else {\r\n            progress = 1;\r\n            opacity = Math.max(0, 1 - (phase - travelEnd) \/ 0.12);\r\n          }\r\n\r\n          const growthLinear = Math.min(1, progress \/ this.dotGrowPortion);\r\n          const growthEased = growthLinear * growthLinear * (3 - 2 * growthLinear);\r\n          const dotScale =\r\n            this.dotStartSize +\r\n            (this.dotFullSize - this.dotStartSize) * growthEased;\r\n\r\n          if (phase >= travelStart && phase <= travelEnd) {\r\n            opacity = growthEased;\r\n          }\r\n\r\n          const length = this.routePath.getTotalLength();\r\n          const point = this.routePath.getPointAtLength(length * progress);\r\n\r\n          this.movingDot.setAttribute(\r\n            'transform',\r\n            'translate(' + point.x.toFixed(2) + ' ' + point.y.toFixed(2) + ')' +\r\n            ' scale(' + dotScale.toFixed(4) + ')'\r\n          );\r\n          this.movingDot.style.opacity = opacity.toFixed(3);\r\n\r\n          if (phase >= travelEnd && this.lastHitCycle !== cycle) {\r\n            this.lastHitCycle = cycle;\r\n            this.triggerImpact();\r\n          }\r\n\r\n          this.motionFrame = requestAnimationFrame(time => this.animateSignal(time));\r\n        }\r\n\r\n        triggerImpact() {\r\n          [this.endpoint, this.shield].forEach(element => {\r\n            if (!element) return;\r\n            element.classList.remove('ps-hit');\r\n            void element.getBoundingClientRect();\r\n            element.classList.add('ps-hit');\r\n          });\r\n\r\n          if (this.hitTimer) clearTimeout(this.hitTimer);\r\n\r\n          this.hitTimer = setTimeout(() => {\r\n            this.endpoint?.classList.remove('ps-hit');\r\n            this.shield?.classList.remove('ps-hit');\r\n          }, this.hitSpeed + 40);\r\n        }\r\n\r\n        restartTabTimer() {\r\n          if (this.tabTimer) clearInterval(this.tabTimer);\r\n\r\n          this.tabTimer = setInterval(() => {\r\n            this.activeTab = (this.activeTab + 1) % this.tabs.length;\r\n            this.renderTabs();\r\n          }, this.tabSpeed);\r\n        }\r\n\r\n        renderTabs() {\r\n          this.tabs.forEach((tab, index) => {\r\n            tab.classList.toggle('is-active', index === this.activeTab);\r\n          });\r\n        }\r\n\r\n        observeStars() {\r\n          if (!this.stars) return;\r\n\r\n          if (!('IntersectionObserver' in window)) {\r\n            this.playStars();\r\n            return;\r\n          }\r\n\r\n          this.starObserver = new IntersectionObserver(\r\n            entries => {\r\n              entries.forEach(entry => {\r\n                if (entry.isIntersecting) {\r\n                  this.playStars();\r\n                } else {\r\n                  this.stars.classList.remove('is-playing');\r\n                }\r\n              });\r\n            },\r\n            { threshold: 0.35 }\r\n          );\r\n\r\n          this.starObserver.observe(this);\r\n        }\r\n\r\n        playStars() {\r\n          this.stars.classList.remove('is-playing');\r\n          void this.stars.getBoundingClientRect();\r\n          this.stars.classList.add('is-playing');\r\n        }\r\n      }\r\n    );\r\n  })();\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\n<\/div>\n<div class=\"elementor-element elementor-element-58bdac7 e-con e-atomic-element e-flexbox-base e-58bdac7-040c680 \" data-id=\"58bdac7\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"58bdac7\" data-e-type=\"e-flexbox\" data-id=\"58bdac7\">\n    <div class=\"elementor-element elementor-element-3d8875c e-flex e-con-boxed e-con e-parent\" data-id=\"3d8875c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-9db83dd e-flex e-con-boxed e-con e-child\" data-id=\"9db83dd\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-daa296b elementor-widget elementor-widget-image\" data-id=\"daa296b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"1147\" height=\"1223\" src=\"https:\/\/panosky.com\/wp-content\/uploads\/2026\/08\/map-phone.png\" class=\"attachment-full size-full wp-image-1977\" alt=\"\" srcset=\"https:\/\/panosky.com\/wp-content\/uploads\/2026\/08\/map-phone.png 1147w, https:\/\/panosky.com\/wp-content\/uploads\/2026\/08\/map-phone-281x300.png 281w, https:\/\/panosky.com\/wp-content\/uploads\/2026\/08\/map-phone-960x1024.png 960w, https:\/\/panosky.com\/wp-content\/uploads\/2026\/08\/map-phone-768x819.png 768w\" sizes=\"(max-width: 1147px) 100vw, 1147px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-30235eb e-con-full e-flex e-con e-child\" data-id=\"30235eb\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-42977d5 elementor-widget elementor-widget-heading\" data-id=\"42977d5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Customers Don\u2019t Search for Websites anymore.<br>\nThey Search for Locations.<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-84406fd elementor-widget elementor-widget-text-editor\" data-id=\"84406fd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Be the location they find, trust, and choose. PanoSky ensures your business stands out in local search with immersive visuals and verified data.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b1f967c e-con-full e-flex e-con e-child\" data-id=\"b1f967c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7c637e1 elementor-view-default elementor-position-block-start elementor-mobile-position-block-start elementor-widget elementor-widget-icon-box\" data-id=\"7c637e1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\t\t\t<div class=\"elementor-icon-box-icon\">\n\t\t\t\t<span  class=\"elementor-icon\">\n\t\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" data-name=\"map pin\" viewBox=\"0 0 105.93 122.88\"><defs><linearGradient id=\"iconGradient\" x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"100%\"><stop offset=\"0%\" stop-color=\"#008BFF\"><\/stop><stop offset=\"100%\" stop-color=\"#50f5FF\"><\/stop><\/linearGradient><\/defs><style type=\"text\/css\">    path, g { fill: url(#iconGradient); fill-rule:evenodd; }  <\/style><path d=\"M56.92,73.14a1.62,1.62,0,0,1-1.86.06A65.25,65.25,0,0,1,38.92,58.8,51.29,51.29,0,0,1,28.06,35.37C26.77,27.38,28,19.7,32,13.45a27,27,0,0,1,6-6.66A29.23,29.23,0,0,1,56.36,0,26,26,0,0,1,73.82,7.12a26,26,0,0,1,4.66,5.68c4.27,7,5.19,16,3.31,25.12A55.29,55.29,0,0,1,56.92,73.14Zm-19,.74V101.7l30.15,13V78.87a65.17,65.17,0,0,0,6.45-5.63v41.18l25-12.59v-56l-9.61,3.7a61.61,61.61,0,0,0,2.38-7.81l9.3-3.59A3.22,3.22,0,0,1,105.7,40a3.18,3.18,0,0,1,.22,1.16v62.7a3.23,3.23,0,0,1-2,3L72.72,122.53a3.23,3.23,0,0,1-2.92,0l-35-15.17L4.68,122.53a3.22,3.22,0,0,1-4.33-1.42A3.28,3.28,0,0,1,0,119.66V53.24a3.23,3.23,0,0,1,2.32-3.1L18.7,43.82a58.63,58.63,0,0,0,2.16,6.07L6.46,55.44v59l25-12.59V67.09a76.28,76.28,0,0,0,6.46,6.79ZM55.15,14.21A13.72,13.72,0,1,1,41.43,27.93,13.72,13.72,0,0,1,55.15,14.21Z\"><\/path><\/svg>\t\t\t\t<\/span>\n\t\t\t<\/div>\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tHigher visiblity in local search results\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-147ef71 elementor-view-default elementor-position-block-start elementor-mobile-position-block-start elementor-widget elementor-widget-icon-box\" data-id=\"147ef71\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\t\t\t<div class=\"elementor-icon-box-icon\">\n\t\t\t\t<span  class=\"elementor-icon\">\n\t\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"3.5 2 93.2 93.2\">version=\"1.1\" xml:space=\"preserve\" style=\"\" x=\"0px\" y=\"0px\" fill-rule=\"evenodd\" clip-rule=\"evenodd\" stroke-linejoin=\"round\" stroke-miterlimit=\"2\"&gt;  <defs><linearGradient id=\"iconGradient\" x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"100%\"><stop offset=\"0%\" stop-color=\"#008BFF\"><\/stop><stop offset=\"100%\" stop-color=\"#50f5FF\"><\/stop><\/linearGradient><\/defs>  <style type=\"text\/css\">    path, g { fill: url(#iconGradient); }  <\/style> <path d=\"m24 17c-6.0508 0-11 4.9492-11 11s4.9492 11 11 11 11-4.9492 11-11-4.9492-11-11-11zm52 0c-6.0508 0-11 4.9492-11 11s4.9492 11 11 11 11-4.9492 11-11-4.9492-11-11-11zm-26 2c-7.1562 0-13 5.8438-13 13s5.8438 13 13 13 13-5.8438 13-13-5.8438-13-13-13zm-26 2c3.8906 0 7 3.1094 7 7s-3.1094 7-7 7-7-3.1094-7-7 3.1094-7 7-7zm52 0c3.8906 0 7 3.1094 7 7s-3.1094 7-7 7-7-3.1094-7-7 3.1094-7 7-7zm-26 2c4.9961 0 9 4.0078 9 9 0 4.9961-4.0039 9-9 9s-9-4.0039-9-9c0-4.9922 4.0039-9 9-9zm-22.809 18c-5.6836 0-11.262 0.71484-15.676 3.1055s-7.5156 6.7734-7.5156 12.918v11.094c0 0.39062 0.11328 0.77344 0.33203 1.1016 2.8711 4.3594 14.285 5.5039 18.539 5.7812 1.1016 0.074219 2.0547-0.76172 2.1289-1.8672 0.074219-1.1016-0.76172-2.0547-1.8672-2.125-1.3945-0.089843-11.762-0.85937-15.133-3.7695v-10.211c0-4.918 1.9922-7.5469 5.418-9.4023 3.4297-1.8555 8.4453-2.6211 13.77-2.6211 4.957 0 10.246 1.0742 13.844 3.0625 0.96875 0.53516 2.1836 0.18359 2.7188-0.78125s0.18359-2.1836-0.78125-2.7188c-4.4766-2.4766-10.273-3.5625-15.781-3.5625zm45.621 0c-5.5078 0-11.305 1.0859-15.781 3.5625-0.96484 0.53516-1.3164 1.75-0.78125 2.7188s1.75 1.3164 2.7188 0.78125c3.5977-1.9883 8.8867-3.0625 13.844-3.0625 5.3242 0 10.34 0.76562 13.77 2.6211 3.4297 1.8555 5.4219 4.4844 5.418 9.4023v10.211c-3.375 2.918-13.758 3.6836-15.133 3.7695-1.1016 0.070313-1.9375 1.0234-1.8672 2.125 0.070312 1.1016 1.0234 1.9375 2.1289 1.8672 4.2617-0.27734 15.672-1.4219 18.539-5.7812 0.21484-0.32812 0.33203-0.71094 0.33203-1.1016v-11.094c0-6.1445-3.1016-10.531-7.5156-12.918-4.4141-2.3906-9.9922-3.1055-15.676-3.1055zm-22.812 8c-6.0234 0-11.559 0.88281-15.824 3.2109-4.2656 2.3281-7.1758 6.4141-7.1758 11.789v13c0 0.81641 0.49609 1.5547 1.2578 1.8594 0 0 10.258 4.1445 21.742 4.1406 11.484 0 21.742-4.1406 21.742-4.1406 0.75781-0.30469 1.2578-1.0391 1.2578-1.8594v-13c0-5.3711-2.9141-9.457-7.1797-11.789-4.2656-2.3281-9.7969-3.2109-15.82-3.2109zm0 4c5.6133 0 10.578 0.90625 13.902 2.7266 3.3281 1.8164 5.0977 4.2305 5.0977 8.2734v11.535c-1.6953 0.63281-9.5547 3.4648-19 3.4648s-17.305-2.832-19-3.4648v-11.535c0-4.0469 1.7695-6.457 5.0938-8.2734 3.3281-1.8164 8.293-2.7266 13.906-2.7266z\"><\/path><\/svg>\t\t\t\t<\/span>\n\t\t\t<\/div>\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tMore calls, visits, and real-world traffic\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9900a52 elementor-view-default elementor-position-block-start elementor-mobile-position-block-start elementor-widget elementor-widget-icon-box\" data-id=\"9900a52\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\t\t\t<div class=\"elementor-icon-box-icon\">\n\t\t\t\t<span  class=\"elementor-icon\">\n\t\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0.9 0.8 99 99\">version=\"1.1\" xml:space=\"preserve\" style=\"\" x=\"0px\" y=\"0px\" fill-rule=\"evenodd\" clip-rule=\"evenodd\" stroke-linejoin=\"round\" stroke-miterlimit=\"2\"&gt;  <defs><linearGradient id=\"iconGradient\" x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"100%\"><stop offset=\"0%\" stop-color=\"#008BFF\"><\/stop><stop offset=\"100%\" stop-color=\"#50f5FF\"><\/stop><\/linearGradient><\/defs>  <style type=\"text\/css\">    path, g { fill: url(#iconGradient); }  <\/style>  <rect x=\"0\" y=\"0\" width=\"64\" height=\"64\" style=\"\" fill=\"none\"><\/rect> <path d=\"m98.434 88.156-6.7383-6.7422h-0.003906c-0.97656-0.97656-2.5586-0.97656-3.5352 0-0.97656 0.97656-0.97656 2.5586 0 3.5352l2.4727 2.4727h-77.219c-0.46094 0-0.83203-0.37109-0.83203-0.83203v-77.219l2.4727 2.4727c0.97656 0.97656 2.5586 0.97656 3.5352 0 0.97656-0.97656 0.97656-2.5586 0-3.5352l-6.7422-6.7422c-0.97656-0.97266-2.5586-0.97266-3.5352 0l-6.7422 6.7422c-0.94922 0.98047-0.93359 2.5391 0.027344 3.5039 0.96484 0.96484 2.5234 0.97656 3.5078 0.03125l2.4766-2.4766v77.223c0.003906 3.2188 2.6133 5.8281 5.832 5.832h77.223l-2.4766 2.4766c-0.48047 0.46875-0.75781 1.1094-0.76172 1.7773-0.003906 0.67188 0.25781 1.3164 0.73438 1.7891 0.47266 0.47656 1.1172 0.73828 1.7891 0.73438 0.66797-0.007813 1.3086-0.28516 1.7734-0.76562l6.7383-6.7422h0.003906c0.97266-0.97656 0.97266-2.5586 0-3.5352z\"><\/path> <path d=\"m84.594 36.125c1.3789 0 2.5-1.1211 2.5-2.5v-16.094 0.003906c-0.015625-0.20703-0.058594-0.40625-0.125-0.60156-0.015625-0.12109-0.042969-0.23828-0.082031-0.35156-0.066407-0.11328-0.14453-0.22656-0.22656-0.33203-0.09375-0.16406-0.20312-0.31641-0.33203-0.45703l-0.03125-0.042969c-0.10547-0.074219-0.21875-0.13672-0.33203-0.19141-0.42969-0.23828-0.89844-0.39453-1.3828-0.47266h-17.844c-1.3789 0-2.5 1.1211-2.5 2.5 0 1.3828 1.1211 2.5 2.5 2.5h12.137l-20.074 21.707h0.003907c-0.27344 0.29297-0.71484 0.35156-1.0547 0.14453l-14-8.6367c-2.0898-1.2852-4.7578-1.1328-6.6836 0.38672l-16.469 13.023c-0.51953 0.41016-0.85547 1.0117-0.93359 1.6719-0.078124 0.65625 0.10938 1.3203 0.52344 1.8398 0.85547 1.0859 2.4297 1.2695 3.5117 0.41016l16.477-13.031c0.27734-0.21484 0.65625-0.23828 0.95703-0.054687l14 8.6367c2.375 1.4609 5.4531 1.043 7.3516-1l19.609-21.219v9.668c0.003906 1.3789 1.1211 2.4922 2.5 2.4922z\"><\/path> <path d=\"m74.465 44.707v30.977c0 1.3789 1.1211 2.5 2.5 2.5 1.3828 0 2.5-1.1211 2.5-2.5v-30.977c0-1.3828-1.1172-2.5-2.5-2.5-1.3789 0-2.5 1.1172-2.5 2.5z\"><\/path> <path d=\"m55.863 57.25v18.434c0 1.3789 1.1211 2.5 2.5 2.5 1.3789 0 2.5-1.1211 2.5-2.5v-18.434c0-1.3789-1.1211-2.5-2.5-2.5-1.3789 0-2.5 1.1211-2.5 2.5z\"><\/path> <path d=\"m37.262 50.207v25.477c0 1.3789 1.1211 2.5 2.5 2.5 1.3828 0 2.5-1.1211 2.5-2.5v-25.477c0-1.3828-1.1172-2.5-2.5-2.5-1.3789 0-2.5 1.1172-2.5 2.5z\"><\/path> <path d=\"m19.668 62.91v12.797c0 1.3789 1.1172 2.5 2.5 2.5 1.3789 0 2.5-1.1211 2.5-2.5v-12.797c0-1.3828-1.1211-2.5-2.5-2.5-1.3828 0-2.5 1.1172-2.5 2.5z\"><\/path><\/svg>\t\t\t\t<\/span>\n\t\t\t<\/div>\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<h3 class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tStronger trust through authentic experiences\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/h3>\n\t\t\t\t\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\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\n<\/div>\n<div class=\"elementor-element elementor-element-f5c1ce0 e-con e-atomic-element e-flexbox-base e-f5c1ce0-69c18cf \" data-id=\"f5c1ce0\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"f5c1ce0\" data-e-type=\"e-flexbox\" data-id=\"f5c1ce0\">\n    <div class=\"elementor-element elementor-element-40baa9c e-con-full e-flex e-con e-parent\" data-id=\"40baa9c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-11e3e7e elementor-widget elementor-widget-html\" data-id=\"11e3e7e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!--\r\n  PanoSky Frictionless Process v15 \u2014 Canvas Route Rebuild Edition\r\n  Paste this entire file into one Elementor HTML widget.\r\n-->\r\n\r\n<style>\r\n  \/* =========================================================\r\n     EASY SETTINGS\r\n     ========================================================= *\/\r\n  .ps-friction-process {\r\n    \/* BACKGROUND IMAGE\r\n       Replace none with: url(\"https:\/\/your-image-link.jpg\") *\/\r\n    --ps-bg-image: none;\r\n    --ps-bg-color: #011841;\r\n    --ps-bg-overlay: rgba(1, 18, 48, 0.88);\r\n    --ps-bg-position: center center;\r\n    --ps-bg-size: cover;\r\n\r\n    \/* ELEMENTOR GLOBAL FONTS\r\n       These automatically use your Elementor global fonts.\r\n       To use a custom font instead, replace a value with:\r\n       \"Satoshi\", sans-serif *\/\r\n    --ps-heading-font: var(--e-global-typography-primary-font-family, inherit);\r\n    --ps-body-font: var(--e-global-typography-text-font-family, inherit);\r\n    --ps-heading-weight: var(--e-global-typography-primary-font-weight, 600);\r\n    --ps-body-weight: var(--e-global-typography-text-font-weight, 400);\r\n\r\n    \/* 01 \/ 02 \/ 03 FONT CONTROLS\r\n       Keep the first value for your Elementor global font, or replace it with:\r\n       \"Satoshi\", sans-serif *\/\r\n    --ps-number-font: var(--e-global-typography-primary-font-family, inherit);\r\n    --ps-number-weight: 500;\r\n    --ps-number-size: 30px;\r\n    --ps-mobile-number-size: 24px;\r\n    --ps-number-letter-spacing: -0.035em;\r\n\r\n    \/* COLORS *\/\r\n    --ps-accent-color: #55a8ff;\r\n    --ps-line-color: #55a8ff;\r\n    --ps-line-glow-color: #2f8cff;\r\n    --ps-node-ring-color: #2f8cff;\r\n    --ps-node-glow-color: rgba(47, 140, 255, 0.42);\r\n    --ps-number-color: #f5f9ff;\r\n    --ps-title-color: #f5f9ff;\r\n    --ps-copy-color: #9aafd0;\r\n    --ps-icon-color: #f5f9ff;\r\n    --ps-node-bg: rgba(2, 29, 70, 0.94);\r\n    --ps-border-color: rgba(88, 151, 255, 0.16);\r\n\r\n    \/* SHAPE + SIZE *\/\r\n    --ps-max-width: 1280px;\r\n    --ps-section-radius: 0px;\r\n    --ps-desktop-padding: 58px 34px 64px;\r\n    --ps-mobile-padding: 42px 20px 28px;\r\n    --ps-node-size: 74px;\r\n    --ps-mobile-node-size: 62px;\r\n\r\n    \/* TRAVELLING GLOW DOT\r\n       The delay begins when this section enters the viewport.\r\n       The default 1.9s starts after the entrance animation finishes. *\/\r\n    --ps-dot-color: #eaf8ff;\r\n    --ps-dot-glow-color: #41a4ff;\r\n    --ps-dot-size: 5;              \/* Radius. Use a plain number. *\/\r\n    --ps-dot-opacity: 1;\r\n    --ps-dot-start-delay: 1.9s;\r\n    --ps-dot-grow-time: 450ms;\r\n    --ps-dot-travel-time: 8s;\r\n    --ps-dot-fade-time: 380ms;\r\n    --ps-dot-repeat-delay: 1.25s;\r\n\r\n    \/* ENTRANCE ANIMATION TIMING *\/\r\n    --ps-path-duration: 1760ms;\r\n    --ps-path-start-delay: 80ms;\r\n    --ps-arrow-reveal-share: 0.13; \/* Final portion used for the arrowhead. *\/\r\n    --ps-line-width: 2.2;\r\n    --ps-line-glow-width: 10;\r\n    --ps-line-glow-opacity: 0.22;\r\n    --ps-canvas-max-dpr: 2;\r\n    --ps-canvas-max-width: 4096;\r\n    --ps-step-1-delay: 250ms;\r\n    --ps-step-2-delay: 610ms;\r\n    --ps-step-3-delay: 970ms;\r\n    --ps-step-duration: 720ms;\r\n\r\n    position: relative;\r\n    display: block;\r\n    width: 100%;\r\n    max-width: 100%;\r\n    box-sizing: border-box;\r\n    overflow: hidden;\r\n    isolation: isolate;\r\n    contain: paint;\r\n    border-radius: var(--ps-section-radius);\r\n    background-color: var(--ps-bg-color);\r\n    background-image:\r\n      linear-gradient(var(--ps-bg-overlay), var(--ps-bg-overlay)),\r\n      var(--ps-bg-image);\r\n    background-position: center, var(--ps-bg-position);\r\n    background-size: cover, var(--ps-bg-size);\r\n    background-repeat: no-repeat;\r\n    border: 1px solid var(--ps-border-color);\r\n    font-family: var(--ps-body-font);\r\n  }\r\n\r\n  .ps-friction-process,\r\n  .ps-friction-process * {\r\n    box-sizing: border-box;\r\n  }\r\n\r\n  \/* =========================================================\r\n     SVG ISOLATION\r\n     Prevents external Elementor\/page SVG gradient CSS from filling\r\n     any SVG inside this widget.\r\n     ========================================================= *\/\r\n  html body .ps-friction-process svg,\r\n  html body .ps-friction-process svg :is(\r\n    path,\r\n    circle,\r\n    rect,\r\n    ellipse,\r\n    line,\r\n    polygon,\r\n    polyline,\r\n    use\r\n  ) {\r\n    fill: none !important;\r\n  }\r\n\r\n  html body .ps-friction-process .ps-step__icon svg :is(\r\n    path,\r\n    circle,\r\n    rect,\r\n    ellipse,\r\n    line,\r\n    polygon,\r\n    polyline,\r\n    use\r\n  ) {\r\n    stroke: currentColor !important;\r\n  }\r\n\r\n  html body .ps-friction-process .ps-step__icon svg [data-ps-solid] {\r\n    fill: currentColor !important;\r\n    stroke: none !important;\r\n  }\r\n\r\n  html body .ps-friction-process .ps-step__icon svg [data-ps-cutout] {\r\n    fill: var(--ps-bg-color) !important;\r\n    stroke: currentColor !important;\r\n  }\r\n\r\n  html body .ps-friction-process .ps-route__motion-path {\r\n    fill: none !important;\r\n    stroke: none !important;\r\n    opacity: 0 !important;\r\n  }\r\n\r\n  .ps-friction-process::before,\r\n  .ps-friction-process::after {\r\n    content: \"\";\r\n    position: absolute;\r\n    z-index: -1;\r\n    width: 380px;\r\n    height: 380px;\r\n    border-radius: 50%;\r\n    background: rgba(28, 113, 255, 0.085);\r\n    filter: blur(90px);\r\n    pointer-events: none;\r\n  }\r\n\r\n  .ps-friction-process::before {\r\n    top: -250px;\r\n    left: 10%;\r\n  }\r\n\r\n  .ps-friction-process::after {\r\n    right: 6%;\r\n    bottom: -290px;\r\n  }\r\n\r\n  .ps-process__inner {\r\n    width: min(100%, var(--ps-max-width));\r\n    margin-inline: auto;\r\n    padding: var(--ps-desktop-padding);\r\n  }\r\n\r\n  .ps-process__eyebrow {\r\n    margin: 0 0 8px;\r\n    color: var(--ps-accent-color);\r\n    font-family: var(--ps-heading-font);\r\n    font-size: clamp(12px, 1.15vw, 16px);\r\n    font-weight: var(--ps-heading-weight);\r\n    line-height: 1.25;\r\n    letter-spacing: 0.22em;\r\n    text-align: center;\r\n    text-transform: uppercase;\r\n    opacity: 0;\r\n    transform: translateY(-10px);\r\n    transition:\r\n      opacity 650ms cubic-bezier(0.22, 1, 0.36, 1),\r\n      transform 650ms cubic-bezier(0.22, 1, 0.36, 1);\r\n  }\r\n\r\n  .ps-process__track {\r\n    position: relative;\r\n    display: grid;\r\n    grid-template-columns: repeat(3, minmax(0, 1fr));\r\n    width: 100%;\r\n    min-height: 370px;\r\n  }\r\n\r\n  .ps-process__route {\r\n    position: absolute;\r\n    z-index: 0;\r\n    inset: 0 0 auto;\r\n    display: block;\r\n    width: 100%;\r\n    height: 150px;\r\n    overflow: visible;\r\n    opacity: 0;\r\n    pointer-events: none;\r\n  }\r\n\r\n  .ps-process__route--mobile {\r\n    display: none;\r\n  }\r\n\r\n  .ps-route__canvas {\r\n    position: absolute;\r\n    z-index: 0;\r\n    inset: 0;\r\n    display: block;\r\n    width: 100%;\r\n    height: 100%;\r\n    pointer-events: none;\r\n  }\r\n\r\n  .ps-route__motion-path {\r\n    fill: none;\r\n    stroke: none;\r\n    opacity: 0;\r\n    pointer-events: none;\r\n  }\r\n\r\n  .ps-route__dot-html {\r\n    position: absolute;\r\n    z-index: 0;\r\n    top: 0;\r\n    left: 0;\r\n    width: 10px;\r\n    height: 10px;\r\n    margin: -5px 0 0 -5px;\r\n    border-radius: 50%;\r\n    background: var(--ps-dot-color);\r\n    box-shadow:\r\n      0 0 4px 1px var(--ps-dot-color),\r\n      0 0 12px 4px var(--ps-dot-glow-color);\r\n    opacity: 0;\r\n    pointer-events: none;\r\n    transform: translate3d(-100px, -100px, 0) scale(0);\r\n    transform-origin: 50% 50%;\r\n    will-change: transform, opacity;\r\n    backface-visibility: hidden;\r\n    contain: layout style;\r\n  }\r\n\r\n  .ps-process__step {\r\n    position: relative;\r\n    z-index: 1;\r\n    min-width: 0;\r\n    padding-inline: clamp(12px, 2.4vw, 32px);\r\n    text-align: center;\r\n    opacity: 0;\r\n    filter: blur(8px);\r\n    transform: translateY(24px);\r\n    transition-property: opacity, filter, transform;\r\n    transition-duration: var(--ps-step-duration);\r\n    transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);\r\n  }\r\n\r\n  .ps-process__step:nth-of-type(1) { transition-delay: var(--ps-step-1-delay); }\r\n  .ps-process__step:nth-of-type(2) { transition-delay: var(--ps-step-2-delay); }\r\n  .ps-process__step:nth-of-type(3) { transition-delay: var(--ps-step-3-delay); }\r\n\r\n  .ps-step__node {\r\n    display: grid;\r\n    place-items: center;\r\n    width: var(--ps-node-size);\r\n    height: var(--ps-node-size);\r\n    margin: 37px auto 0;\r\n    border: 2px solid var(--ps-node-ring-color);\r\n    border-radius: 50%;\r\n    color: var(--ps-number-color);\r\n    background: var(--ps-node-bg);\r\n    box-shadow:\r\n      0 0 0 7px rgba(47, 140, 255, 0.055),\r\n      0 0 22px var(--ps-node-glow-color),\r\n      inset 0 0 18px rgba(47, 140, 255, 0.12);\r\n    font-family: var(--ps-number-font);\r\n    font-size: var(--ps-number-size);\r\n    font-weight: var(--ps-number-weight);\r\n    line-height: 1;\r\n    letter-spacing: var(--ps-number-letter-spacing);\r\n    transform: scale(0.72);\r\n    transition: transform 760ms cubic-bezier(0.16, 1.35, 0.32, 1);\r\n    transition-delay: inherit;\r\n  }\r\n\r\n  .ps-step__content {\r\n    max-width: 390px;\r\n    margin: 45px auto 0;\r\n  }\r\n\r\n  .ps-step__icon {\r\n    display: grid;\r\n    place-items: center;\r\n    width: 64px;\r\n    height: 64px;\r\n    margin: 0 auto 16px;\r\n    color: var(--ps-icon-color);\r\n    opacity: 0.94;\r\n    transform: scale(0.82) translateY(5px);\r\n    transition: transform 780ms cubic-bezier(0.16, 1.3, 0.3, 1);\r\n    transition-delay: inherit;\r\n  }\r\n\r\n  .ps-step__icon svg {\r\n    display: block;\r\n    width: 100%;\r\n    height: 100%;\r\n    overflow: visible;\r\n    stroke: currentColor;\r\n    filter: drop-shadow(0 0 6px rgba(47, 140, 255, 0.16));\r\n  }\r\n\r\n  .ps-step__title {\r\n    margin: 0;\r\n    color: var(--ps-title-color);\r\n    font-family: var(--ps-heading-font);\r\n    font-size: clamp(19px, 1.65vw, 24px);\r\n    font-weight: var(--ps-heading-weight);\r\n    line-height: 1.22;\r\n    letter-spacing: -0.025em;\r\n  }\r\n\r\n  .ps-step__copy {\r\n    max-width: 370px;\r\n    margin: 14px auto 0;\r\n    color: var(--ps-copy-color);\r\n    font-family: var(--ps-body-font);\r\n    font-size: clamp(14px, 1.2vw, 17px);\r\n    font-weight: var(--ps-body-weight);\r\n    line-height: 1.62;\r\n    text-wrap: pretty;\r\n  }\r\n\r\n  \/* Visible \/ replay state *\/\r\n  .ps-friction-process.ps-is-visible .ps-process__eyebrow,\r\n  .ps-friction-process.ps-is-visible .ps-process__step {\r\n    opacity: 1;\r\n    filter: blur(0);\r\n    transform: translateY(0);\r\n  }\r\n\r\n  .ps-friction-process.ps-is-visible .ps-step__node {\r\n    transform: scale(1);\r\n  }\r\n\r\n  .ps-friction-process.ps-is-visible .ps-step__icon {\r\n    transform: scale(1) translateY(0);\r\n  }\r\n\r\n  @media (hover: hover) and (pointer: fine) {\r\n    .ps-process__step:hover .ps-step__node {\r\n      transform: translateY(-3px) scale(1.035);\r\n      box-shadow:\r\n        0 0 0 8px rgba(47, 140, 255, 0.07),\r\n        0 0 30px var(--ps-node-glow-color),\r\n        inset 0 0 20px rgba(47, 140, 255, 0.16);\r\n    }\r\n\r\n    .ps-process__step:hover .ps-step__icon {\r\n      transform: translateY(-3px);\r\n    }\r\n  }\r\n\r\n  \/* =========================================================\r\n     MOBILE + TABLET VERTICAL LAYOUT\r\n     Change 900px below if you want the switch to happen earlier\/later.\r\n     ========================================================= *\/\r\n  @media (max-width: 767px) {\r\n    \/* Mobile performance: wide translucent strokes preserve the glow\r\n       without expensive live blur\/drop-shadow rendering. *\/\r\n    .ps-step__icon svg {\r\n      filter: none !important;\r\n    }\r\n\r\n    .ps-process__step,\r\n    .ps-friction-process.ps-is-visible .ps-process__step {\r\n      filter: none;\r\n    }\r\n\r\n    .ps-process__route--mobile {\r\n      transform: translateZ(0);\r\n      backface-visibility: hidden;\r\n    }\r\n\r\n    .ps-process__inner {\r\n      padding: var(--ps-mobile-padding);\r\n    }\r\n\r\n    .ps-process__eyebrow {\r\n      max-width: 100%;\r\n      margin-bottom: 34px;\r\n      font-size: clamp(11px, 3.5vw, 14px);\r\n      letter-spacing: 0.18em;\r\n    }\r\n\r\n    .ps-process__track {\r\n      display: block;\r\n      min-height: 0;\r\n      padding-bottom: 6px;\r\n    }\r\n\r\n    .ps-process__route--desktop {\r\n      display: none;\r\n    }\r\n\r\n    .ps-process__route--mobile {\r\n      display: block;\r\n      inset: 0 auto 8px 0;\r\n      width: 78px;\r\n      height: calc(100% - 8px);\r\n    }\r\n\r\n    .ps-process__step {\r\n      display: grid;\r\n      grid-template-columns: 78px minmax(0, 1fr);\r\n      align-items: start;\r\n      min-height: 250px;\r\n      padding: 0;\r\n      text-align: left;\r\n      transform: translateY(18px);\r\n    }\r\n\r\n    .ps-process__step:last-of-type {\r\n      min-height: 238px;\r\n    }\r\n\r\n    .ps-step__node {\r\n      grid-column: 1;\r\n      grid-row: 1;\r\n      width: var(--ps-mobile-node-size);\r\n      height: var(--ps-mobile-node-size);\r\n      margin: 4px auto 0;\r\n      font-size: var(--ps-mobile-number-size);\r\n    }\r\n\r\n    .ps-step__content {\r\n      grid-column: 2;\r\n      grid-row: 1;\r\n      width: 100%;\r\n      max-width: none;\r\n      margin: 0;\r\n      padding: 0 0 32px 16px;\r\n    }\r\n\r\n    .ps-step__icon {\r\n      width: 56px;\r\n      height: 56px;\r\n      margin: 0 0 16px;\r\n    }\r\n\r\n    .ps-step__title {\r\n      font-size: clamp(19px, 5.5vw, 23px);\r\n      line-height: 1.22;\r\n    }\r\n\r\n    .ps-step__copy {\r\n      max-width: 500px;\r\n      margin: 12px 0 0;\r\n      font-size: clamp(14px, 4vw, 16px);\r\n      line-height: 1.58;\r\n    }\r\n  }\r\n\r\n  @media (max-width: 359px) {\r\n    .ps-friction-process {\r\n      --ps-mobile-padding: 38px 14px 24px;\r\n      --ps-mobile-node-size: 56px;\r\n    }\r\n\r\n    .ps-process__route--mobile {\r\n      width: 68px;\r\n    }\r\n\r\n    .ps-process__step {\r\n      grid-template-columns: 68px minmax(0, 1fr);\r\n    }\r\n\r\n    .ps-step__content {\r\n      padding-left: 12px;\r\n    }\r\n  }\r\n\r\n  @media (prefers-reduced-motion: reduce) {\r\n    .ps-friction-process *,\r\n    .ps-friction-process *::before,\r\n    .ps-friction-process *::after {\r\n      scroll-behavior: auto !important;\r\n      animation: none !important;\r\n      transition-duration: 0.01ms !important;\r\n      transition-delay: 0ms !important;\r\n    }\r\n\r\n    .ps-route__dot-html {\r\n      opacity: 0 !important;\r\n    }\r\n\r\n  }\r\n<\/style>\r\n\r\n<section\r\n  class=\"ps-friction-process\"\r\n  data-ps-process\r\n  data-enter-threshold=\"0.18\"\r\n  aria-labelledby=\"ps-process-title\"\r\n>\r\n  <div class=\"ps-process__inner\">\r\n    <p class=\"ps-process__eyebrow\" id=\"ps-process-title\">The Frictionless Process<\/p>\r\n\r\n    <div class=\"ps-process__track\">\r\n      <!-- Desktop route -->\r\n      <svg class=\"ps-process__route ps-process__route--desktop\" viewBox=\"0 0 1200 150\" preserveAspectRatio=\"none\" aria-hidden=\"true\">\r\n        <path class=\"ps-route__motion-path\" d=\"M0 74 C90 25 140 74 200 74 C330 74 360 138 520 92 C550 82 575 74 600 74 C740 74 750 128 910 82 C945 72 970 74 1000 74 C1080 74 1120 100 1174 22\" \/>\r\n      <\/svg>\r\n\r\n      <!-- Mobile route -->\r\n      <svg class=\"ps-process__route ps-process__route--mobile\" viewBox=\"0 0 78 738\" preserveAspectRatio=\"none\" aria-hidden=\"true\">\r\n        <path class=\"ps-route__motion-path\" d=\"M39 0 L39 35 C39 100 17 165 39 226 C48 251 50 272 39 289 C18 360 58 427 39 505 C35 521 37 536 39 544 C50 585 28 610 56 642\" \/>\r\n      <\/svg>\r\n\r\n      <!-- The visible route is drawn here without SVG dash animation. -->\r\n      <canvas class=\"ps-route__canvas\" aria-hidden=\"true\"><\/canvas>\r\n\r\n      <!-- GPU-composited dot. Kept outside the stretched SVG to prevent\r\n           sub-pixel shimmer on mobile browsers. -->\r\n      <div class=\"ps-route__dot-html\" aria-hidden=\"true\"><\/div>\r\n\r\n      <!-- Step 01 -->\r\n      <article class=\"ps-process__step\">\r\n        <div class=\"ps-step__node\" aria-hidden=\"true\">01<\/div>\r\n        <div class=\"ps-step__content\">\r\n          <div class=\"ps-step__icon\" aria-hidden=\"true\">\r\n            <svg viewBox=\"0 0 64 64\" fill=\"none\">\r\n              <rect x=\"10\" y=\"15\" width=\"44\" height=\"30\" rx=\"5\" stroke-width=\"2.2\" \/>\r\n              <path d=\"M22 15L25 10H39L42 15M32 45V53M24 61L29 53H35L40 61\" stroke-width=\"2.2\" \/>\r\n              <circle cx=\"32\" cy=\"30\" r=\"9\" stroke-width=\"2.2\" \/>\r\n              <circle data-ps-solid cx=\"32\" cy=\"30\" r=\"2.2\" fill=\"currentColor\" stroke=\"none\" \/>\r\n              <path d=\"M16 22H20\" stroke-width=\"2.2\" \/>\r\n            <\/svg>\r\n          <\/div>\r\n          <h3 class=\"ps-step__title\">Precision Spatial Capture<\/h3>\r\n          <p class=\"ps-step__copy\">We capture industry-leading 360\u00b0 imagery with unmatched clarity and consistency.<\/p>\r\n        <\/div>\r\n      <\/article>\r\n\r\n      <!-- Step 02 -->\r\n      <article class=\"ps-process__step\">\r\n        <div class=\"ps-step__node\" aria-hidden=\"true\">02<\/div>\r\n        <div class=\"ps-step__content\">\r\n          <div class=\"ps-step__icon\" aria-hidden=\"true\">\r\n            <svg viewBox=\"0 0 64 64\" fill=\"none\">\r\n              <path d=\"M17 7H38L49 18V52C49 55.3 46.3 58 43 58H17C13.7 58 11 55.3 11 52V13C11 9.7 13.7 7 17 7Z\" stroke-width=\"2.2\" \/>\r\n              <path d=\"M38 7V18H49M20 28H39M20 37H35M20 46H31\" stroke-width=\"2.2\" \/>\r\n              <circle data-ps-cutout cx=\"47\" cy=\"48\" r=\"10\" fill=\"#011841\" stroke-width=\"2.2\" \/>\r\n              <path d=\"M42.5 48L45.5 51L51.5 44.5\" stroke-width=\"2.2\" \/>\r\n            <\/svg>\r\n          <\/div>\r\n          <h3 class=\"ps-step__title\">Native Metadata Optimization<\/h3>\r\n          <p class=\"ps-step__copy\">We structure, tag, and optimize every data point for Google\u2019s knowledge graph.<\/p>\r\n        <\/div>\r\n      <\/article>\r\n\r\n      <!-- Step 03 -->\r\n      <article class=\"ps-process__step\">\r\n        <div class=\"ps-step__node\" aria-hidden=\"true\">03<\/div>\r\n        <div class=\"ps-step__content\">\r\n          <div class=\"ps-step__icon\" aria-hidden=\"true\">\r\n            <svg viewBox=\"0 0 64 64\" fill=\"none\">\r\n              <path d=\"M18 50H14C7.9 50 3 45.1 3 39C3 33.6 6.8 29.1 11.9 28.1C12.4 19.1 19.9 12 29 12C36.8 12 43.4 17.1 45.7 24.2C54.1 24.6 61 31.6 61 40C61 45.5 56.5 50 51 50H46\" stroke-width=\"2.2\" \/>\r\n              <path d=\"M32 55V31M22.5 40.5L32 31L41.5 40.5\" stroke-width=\"2.2\" \/>\r\n            <\/svg>\r\n          <\/div>\r\n          <h3 class=\"ps-step__title\">Direct Partner Publishing<\/h3>\r\n          <p class=\"ps-step__copy\">We publish directly to Google\u2014ensuring accuracy, speed, and lasting impact.<\/p>\r\n        <\/div>\r\n      <\/article>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<script>\r\n  (() => {\r\n    \"use strict\";\r\n\r\n    const SELECTOR = \"[data-ps-process]\";\r\n\r\n    function readCssTime(styles, property, fallback) {\r\n      const raw = styles.getPropertyValue(property).trim();\r\n      const value = Number.parseFloat(raw);\r\n      if (!Number.isFinite(value)) return fallback;\r\n      if (raw.endsWith(\"ms\")) return value;\r\n      if (raw.endsWith(\"s\")) return value * 1000;\r\n      return value;\r\n    }\r\n\r\n    function easeOutCubic(value) {\r\n      return 1 - Math.pow(1 - value, 3);\r\n    }\r\n\r\n    function getMotionCache(state, path) {\r\n      state.motionCache ||= new WeakMap();\r\n      const existing = state.motionCache.get(path);\r\n      if (existing) return existing;\r\n\r\n      \/* Pre-sample once. Repeated cycles then avoid the relatively expensive\r\n         SVG getPointAtLength calculation on every animation frame. *\/\r\n      const sampleCount = 240;\r\n      const pathLength = path.getTotalLength();\r\n      const points = new Float32Array((sampleCount + 1) * 2);\r\n\r\n      for (let index = 0; index <= sampleCount; index += 1) {\r\n        const point = path.getPointAtLength(pathLength * (index \/ sampleCount));\r\n        points[index * 2] = point.x;\r\n        points[index * 2 + 1] = point.y;\r\n      }\r\n\r\n      const cache = { points, sampleCount };\r\n      state.motionCache.set(path, cache);\r\n      return cache;\r\n    }\r\n\r\n    function sampleMotion(cache, progress) {\r\n      const scaled = Math.min(Math.max(progress, 0), 1) * cache.sampleCount;\r\n      const lower = Math.floor(scaled);\r\n      const upper = Math.min(lower + 1, cache.sampleCount);\r\n      const mix = scaled - lower;\r\n      const lowerOffset = lower * 2;\r\n      const upperOffset = upper * 2;\r\n\r\n      return {\r\n        x: cache.points[lowerOffset] +\r\n          (cache.points[upperOffset] - cache.points[lowerOffset]) * mix,\r\n        y: cache.points[lowerOffset + 1] +\r\n          (cache.points[upperOffset + 1] - cache.points[lowerOffset + 1]) * mix\r\n      };\r\n    }\r\n\r\n    function projectMotionToPixels(cache, path, track) {\r\n      const matrix = path.getScreenCTM();\r\n      const trackRect = track.getBoundingClientRect();\r\n      if (!matrix) return cache;\r\n\r\n      const points = new Float32Array(cache.points.length);\r\n\r\n      for (let index = 0; index <= cache.sampleCount; index += 1) {\r\n        const offset = index * 2;\r\n        const x = cache.points[offset];\r\n        const y = cache.points[offset + 1];\r\n        points[offset] = matrix.a * x + matrix.c * y + matrix.e - trackRect.left;\r\n        points[offset + 1] = matrix.b * x + matrix.d * y + matrix.f - trackRect.top;\r\n      }\r\n\r\n      return { points, sampleCount: cache.sampleCount };\r\n    }\r\n\r\n    function getVisibleRoute(root) {\r\n      return Array.from(root.querySelectorAll(\".ps-process__route\"))\r\n        .find((element) => window.getComputedStyle(element).display !== \"none\");\r\n    }\r\n\r\n    function traceCanvasMotion(context, motion, progress) {\r\n      if (progress <= 0) return false;\r\n\r\n      const scaled = Math.min(progress, 1) * motion.sampleCount;\r\n      const wholePoints = Math.floor(scaled);\r\n      const fraction = scaled - wholePoints;\r\n      context.moveTo(motion.points[0], motion.points[1]);\r\n\r\n      for (let index = 1; index <= wholePoints; index += 1) {\r\n        const offset = index * 2;\r\n        context.lineTo(motion.points[offset], motion.points[offset + 1]);\r\n      }\r\n\r\n      if (fraction > 0 && wholePoints < motion.sampleCount) {\r\n        const fromOffset = wholePoints * 2;\r\n        const toOffset = (wholePoints + 1) * 2;\r\n        context.lineTo(\r\n          motion.points[fromOffset] +\r\n            (motion.points[toOffset] - motion.points[fromOffset]) * fraction,\r\n          motion.points[fromOffset + 1] +\r\n            (motion.points[toOffset + 1] - motion.points[fromOffset + 1]) * fraction\r\n        );\r\n      }\r\n\r\n      return true;\r\n    }\r\n\r\n    function createCanvasArrow(motion, size) {\r\n      const tip = sampleMotion(motion, 1);\r\n      const beforeTip = sampleMotion(motion, 0.985);\r\n      const dx = tip.x - beforeTip.x;\r\n      const dy = tip.y - beforeTip.y;\r\n      const magnitude = Math.hypot(dx, dy) || 1;\r\n      const backX = -dx \/ magnitude;\r\n      const backY = -dy \/ magnitude;\r\n      const angle = 25 * (Math.PI \/ 180);\r\n      const cosine = Math.cos(angle);\r\n      const sine = Math.sin(angle);\r\n\r\n      return {\r\n        tip,\r\n        wingA: {\r\n          x: tip.x + (backX * cosine - backY * sine) * size,\r\n          y: tip.y + (backX * sine + backY * cosine) * size\r\n        },\r\n        wingB: {\r\n          x: tip.x + (backX * cosine + backY * sine) * size,\r\n          y: tip.y + (-backX * sine + backY * cosine) * size\r\n        }\r\n      };\r\n    }\r\n\r\n    function prepareCanvasGeometry(root, state) {\r\n      const canvas = root.querySelector(\".ps-route__canvas\");\r\n      const route = getVisibleRoute(root);\r\n      const path = route?.querySelector(\".ps-route__motion-path\");\r\n      const track = root.querySelector(\".ps-process__track\");\r\n      if (!canvas || !path || !track || typeof path.getTotalLength !== \"function\") {\r\n        return null;\r\n      }\r\n\r\n      const rect = track.getBoundingClientRect();\r\n      if (rect.width < 1 || rect.height < 1) return null;\r\n\r\n      const styles = window.getComputedStyle(root);\r\n      const parsedMaxDpr = Number.parseFloat(styles.getPropertyValue(\"--ps-canvas-max-dpr\"));\r\n      const parsedMaxWidth = Number.parseFloat(styles.getPropertyValue(\"--ps-canvas-max-width\"));\r\n      const maximumDpr = Number.isFinite(parsedMaxDpr) ? Math.max(1, parsedMaxDpr) : 2;\r\n      const maximumWidth = Number.isFinite(parsedMaxWidth) ? Math.max(1024, parsedMaxWidth) : 4096;\r\n      const deviceDpr = Math.max(1, window.devicePixelRatio || 1);\r\n      const pixelRatio = Math.max(\r\n        0.75,\r\n        Math.min(deviceDpr, maximumDpr, maximumWidth \/ rect.width)\r\n      );\r\n      const pixelWidth = Math.max(1, Math.round(rect.width * pixelRatio));\r\n      const pixelHeight = Math.max(1, Math.round(rect.height * pixelRatio));\r\n\r\n      if (canvas.width !== pixelWidth || canvas.height !== pixelHeight) {\r\n        canvas.width = pixelWidth;\r\n        canvas.height = pixelHeight;\r\n      }\r\n\r\n      const context = canvas.getContext(\"2d\", { alpha: true });\r\n      if (!context) return null;\r\n      context.setTransform(pixelRatio, 0, 0, pixelRatio, 0, 0);\r\n\r\n      const motion = projectMotionToPixels(getMotionCache(state, path), path, track);\r\n      const parsedLineWidth = Number.parseFloat(styles.getPropertyValue(\"--ps-line-width\"));\r\n      const parsedGlowWidth = Number.parseFloat(styles.getPropertyValue(\"--ps-line-glow-width\"));\r\n      const parsedGlowOpacity = Number.parseFloat(styles.getPropertyValue(\"--ps-line-glow-opacity\"));\r\n      const parsedArrowShare = Number.parseFloat(styles.getPropertyValue(\"--ps-arrow-reveal-share\"));\r\n      const lineWidth = Number.isFinite(parsedLineWidth) ? Math.max(0.5, parsedLineWidth) : 2.2;\r\n      const glowWidth = Number.isFinite(parsedGlowWidth) ? Math.max(lineWidth, parsedGlowWidth) : 10;\r\n      const glowOpacity = Number.isFinite(parsedGlowOpacity)\r\n        ? Math.min(Math.max(parsedGlowOpacity, 0), 1)\r\n        : 0.22;\r\n      const arrowShare = Number.isFinite(parsedArrowShare)\r\n        ? Math.min(Math.max(parsedArrowShare, 0.05), 0.3)\r\n        : 0.13;\r\n      const isMobile = route.classList.contains(\"ps-process__route--mobile\");\r\n\r\n      return {\r\n        canvas,\r\n        context,\r\n        width: rect.width,\r\n        height: rect.height,\r\n        motion,\r\n        arrow: createCanvasArrow(motion, isMobile ? 13 : 18),\r\n        arrowShare,\r\n        lineWidth,\r\n        glowWidth,\r\n        glowOpacity,\r\n        lineColor: styles.getPropertyValue(\"--ps-line-color\").trim() || \"#55a8ff\",\r\n        glowColor: styles.getPropertyValue(\"--ps-line-glow-color\").trim() || \"#2f8cff\"\r\n      };\r\n    }\r\n\r\n    function clearCanvasRoute(root) {\r\n      const canvas = root.querySelector(\".ps-route__canvas\");\r\n      const context = canvas?.getContext(\"2d\");\r\n      if (!canvas || !context) return;\r\n      context.save();\r\n      context.setTransform(1, 0, 0, 1, 0, 0);\r\n      context.clearRect(0, 0, canvas.width, canvas.height);\r\n      context.restore();\r\n    }\r\n\r\n    function strokeCanvasArrow(context, arrow, progress) {\r\n      const drawWing = (wing) => {\r\n        context.moveTo(arrow.tip.x, arrow.tip.y);\r\n        context.lineTo(\r\n          arrow.tip.x + (wing.x - arrow.tip.x) * progress,\r\n          arrow.tip.y + (wing.y - arrow.tip.y) * progress\r\n        );\r\n      };\r\n      drawWing(arrow.wingA);\r\n      drawWing(arrow.wingB);\r\n    }\r\n\r\n    function drawCanvasRoute(geometry, progress) {\r\n      const { context } = geometry;\r\n      context.clearRect(0, 0, geometry.width, geometry.height);\r\n\r\n      const shaftShare = 1 - geometry.arrowShare;\r\n      const shaftProgress = progress < shaftShare\r\n        ? easeOutCubic(progress \/ shaftShare)\r\n        : 1;\r\n      const arrowProgress = progress <= shaftShare\r\n        ? 0\r\n        : easeOutCubic((progress - shaftShare) \/ geometry.arrowShare);\r\n\r\n      const drawLayer = (color, width, opacity) => {\r\n        context.save();\r\n        context.strokeStyle = color;\r\n        context.lineWidth = width;\r\n        context.lineCap = \"round\";\r\n        context.lineJoin = \"round\";\r\n        context.globalAlpha = opacity;\r\n\r\n        if (shaftProgress > 0) {\r\n          context.beginPath();\r\n          traceCanvasMotion(context, geometry.motion, shaftProgress);\r\n          context.stroke();\r\n        }\r\n\r\n        if (arrowProgress > 0) {\r\n          context.beginPath();\r\n          strokeCanvasArrow(context, geometry.arrow, arrowProgress);\r\n          context.stroke();\r\n        }\r\n\r\n        context.restore();\r\n      };\r\n\r\n      drawLayer(\r\n        geometry.glowColor,\r\n        geometry.glowWidth,\r\n        geometry.glowOpacity * 0.55\r\n      );\r\n      drawLayer(\r\n        geometry.glowColor,\r\n        geometry.glowWidth * 0.55,\r\n        Math.min(geometry.glowOpacity * 0.95, 1)\r\n      );\r\n      drawLayer(geometry.lineColor, geometry.lineWidth, 1);\r\n    }\r\n\r\n    function stopCanvasRoute(root, clear = true) {\r\n      const state = root._psCanvasRouteState || { token: 0 };\r\n      state.token += 1;\r\n      window.cancelAnimationFrame(state.frameId);\r\n      state.frameId = 0;\r\n      root._psCanvasRouteState = state;\r\n      if (clear) clearCanvasRoute(root);\r\n    }\r\n\r\n    function animateCanvasRoute(root) {\r\n      stopCanvasRoute(root, true);\r\n      const state = root._psCanvasRouteState;\r\n      const token = state.token;\r\n      const geometry = prepareCanvasGeometry(root, state);\r\n      if (!geometry) return;\r\n\r\n      if (window.matchMedia?.(\"(prefers-reduced-motion: reduce)\").matches) {\r\n        drawCanvasRoute(geometry, 1);\r\n        return;\r\n      }\r\n\r\n      const styles = window.getComputedStyle(root);\r\n      const duration = Math.max(1, readCssTime(styles, \"--ps-path-duration\", 1760));\r\n      const delay = Math.max(0, readCssTime(styles, \"--ps-path-start-delay\", 80));\r\n      const startsAt = performance.now() + delay;\r\n\r\n      const render = (now) => {\r\n        if (state.token !== token || !root.classList.contains(\"ps-is-visible\")) {\r\n          clearCanvasRoute(root);\r\n          return;\r\n        }\r\n\r\n        const progress = Math.min(Math.max((now - startsAt) \/ duration, 0), 1);\r\n        drawCanvasRoute(geometry, progress);\r\n\r\n        if (progress < 1) {\r\n          state.frameId = window.requestAnimationFrame(render);\r\n        } else {\r\n          state.frameId = 0;\r\n        }\r\n      };\r\n\r\n      state.frameId = window.requestAnimationFrame(render);\r\n    }\r\n\r\n    function positionHtmlDot(dot, point, scale, deviceScale) {\r\n      \/* Lightweight fallback for browsers without Web Animations. *\/\r\n      const x = Math.round(point.x * deviceScale) \/ deviceScale;\r\n      const y = Math.round(point.y * deviceScale) \/ deviceScale;\r\n      dot.style.transform = `translate3d(${x}px, ${y}px, 0) scale(${scale.toFixed(3)})`;\r\n    }\r\n\r\n    function buildDotKeyframes(\r\n      motion,\r\n      travelTime,\r\n      totalTime,\r\n      growTime,\r\n      dotOpacity,\r\n      deviceScale\r\n    ) {\r\n      \/* The browser interpolates these anchor points on its compositor.\r\n         This avoids per-frame JS movement and removes mobile micro-stutter. *\/\r\n      const frameCount = Math.min(160, Math.max(80, Math.round(travelTime \/ 20)));\r\n      const travelPortion = travelTime \/ totalTime;\r\n      const frames = [];\r\n\r\n      for (let index = 0; index <= frameCount; index += 1) {\r\n        const progress = index \/ frameCount;\r\n        const point = sampleMotion(motion, progress);\r\n        const elapsed = progress * travelTime;\r\n        const appearProgress = easeOutCubic(Math.min(elapsed \/ growTime, 1));\r\n        const x = Math.round(point.x * deviceScale) \/ deviceScale;\r\n        const y = Math.round(point.y * deviceScale) \/ deviceScale;\r\n\r\n        frames.push({\r\n          offset: travelPortion * progress,\r\n          transform: `translate3d(${x}px, ${y}px, 0) scale(${appearProgress.toFixed(4)})`,\r\n          opacity: dotOpacity * appearProgress\r\n        });\r\n      }\r\n\r\n      const endPoint = sampleMotion(motion, 1);\r\n      const endX = Math.round(endPoint.x * deviceScale) \/ deviceScale;\r\n      const endY = Math.round(endPoint.y * deviceScale) \/ deviceScale;\r\n      frames[frames.length - 1].easing = \"cubic-bezier(0.33, 1, 0.68, 1)\";\r\n      frames.push({\r\n        offset: 1,\r\n        transform: `translate3d(${endX}px, ${endY}px, 0) scale(0)`,\r\n        opacity: 0\r\n      });\r\n\r\n      return frames;\r\n    }\r\n\r\n    function hideRouteDots(root) {\r\n      root.querySelectorAll(\".ps-route__dot-html\").forEach((dot) => {\r\n        dot.style.transform = \"translate3d(-100px, -100px, 0) scale(0)\";\r\n        dot.style.opacity = \"0\";\r\n      });\r\n    }\r\n\r\n    function stopRouteDot(root) {\r\n      const state = root._psRouteDotState || { token: 0 };\r\n      state.token += 1;\r\n      window.clearTimeout(state.timeoutId);\r\n      window.cancelAnimationFrame(state.frameId);\r\n      state.animation?.cancel();\r\n      state.timeoutId = 0;\r\n      state.frameId = 0;\r\n      state.animation = null;\r\n      root._psRouteDotState = state;\r\n      hideRouteDots(root);\r\n    }\r\n\r\n    function scheduleRouteDot(root) {\r\n      stopRouteDot(root);\r\n\r\n      if (window.matchMedia?.(\"(prefers-reduced-motion: reduce)\").matches) return;\r\n\r\n      const state = root._psRouteDotState;\r\n      const token = state.token;\r\n      const styles = window.getComputedStyle(root);\r\n      const startDelay = Math.max(0, readCssTime(styles, \"--ps-dot-start-delay\", 1900));\r\n      const growTime = Math.max(1, readCssTime(styles, \"--ps-dot-grow-time\", 450));\r\n      const travelTime = Math.max(1, readCssTime(styles, \"--ps-dot-travel-time\", 3200));\r\n      const fadeTime = Math.max(1, readCssTime(styles, \"--ps-dot-fade-time\", 380));\r\n      const repeatDelay = Math.max(0, readCssTime(styles, \"--ps-dot-repeat-delay\", 1250));\r\n      const parsedSize = Number.parseFloat(styles.getPropertyValue(\"--ps-dot-size\"));\r\n      const parsedOpacity = Number.parseFloat(styles.getPropertyValue(\"--ps-dot-opacity\"));\r\n      const dotSize = Number.isFinite(parsedSize) ? Math.max(0, parsedSize) : 5;\r\n      const dotOpacity = Number.isFinite(parsedOpacity)\r\n        ? Math.min(Math.max(parsedOpacity, 0), 1)\r\n        : 1;\r\n\r\n      const runCycle = () => {\r\n        if (state.token !== token || !root.classList.contains(\"ps-is-visible\")) return;\r\n\r\n        hideRouteDots(root);\r\n        const route = Array.from(root.querySelectorAll(\".ps-process__route\"))\r\n          .find((element) => window.getComputedStyle(element).display !== \"none\");\r\n        const path = route?.querySelector(\".ps-route__motion-path\");\r\n        const track = root.querySelector(\".ps-process__track\");\r\n        const dot = root.querySelector(\".ps-route__dot-html\");\r\n        if (!path || !track || !dot || typeof path.getTotalLength !== \"function\") return;\r\n\r\n        const motion = projectMotionToPixels(getMotionCache(state, path), path, track);\r\n        const startPoint = sampleMotion(motion, 0);\r\n        const endPoint = sampleMotion(motion, 1);\r\n        const totalTime = travelTime + fadeTime;\r\n        const startedAt = performance.now();\r\n        const deviceScale = Math.max(1, Math.min(window.devicePixelRatio || 1, 4));\r\n\r\n        dot.style.width = `${dotSize * 2}px`;\r\n        dot.style.height = `${dotSize * 2}px`;\r\n        dot.style.marginLeft = `${-dotSize}px`;\r\n        dot.style.marginTop = `${-dotSize}px`;\r\n        positionHtmlDot(dot, startPoint, 0, deviceScale);\r\n        dot.style.opacity = \"0\";\r\n\r\n        if (typeof dot.animate === \"function\") {\r\n          const animation = dot.animate(\r\n            buildDotKeyframes(\r\n              motion,\r\n              travelTime,\r\n              totalTime,\r\n              growTime,\r\n              dotOpacity,\r\n              deviceScale\r\n            ),\r\n            {\r\n              duration: totalTime,\r\n              easing: \"linear\",\r\n              fill: \"forwards\"\r\n            }\r\n          );\r\n\r\n          state.animation = animation;\r\n          animation.finished.then(\r\n            () => {\r\n              if (state.animation === animation) state.animation = null;\r\n              animation.cancel();\r\n              if (state.token !== token || !root.classList.contains(\"ps-is-visible\")) {\r\n                hideRouteDots(root);\r\n                return;\r\n              }\r\n\r\n              hideRouteDots(root);\r\n              state.timeoutId = window.setTimeout(runCycle, repeatDelay);\r\n            },\r\n            () => {}\r\n          );\r\n          return;\r\n        }\r\n\r\n        const render = (now) => {\r\n          if (state.token !== token || !root.classList.contains(\"ps-is-visible\")) {\r\n            hideRouteDots(root);\r\n            return;\r\n          }\r\n\r\n          const elapsed = now - startedAt;\r\n\r\n          if (elapsed < travelTime) {\r\n            const travelProgress = Math.min(elapsed \/ travelTime, 1);\r\n            const appearProgress = easeOutCubic(Math.min(elapsed \/ growTime, 1));\r\n            const point = sampleMotion(motion, travelProgress);\r\n            positionHtmlDot(dot, point, appearProgress, deviceScale);\r\n            dot.style.opacity = String(dotOpacity * appearProgress);\r\n          } else if (elapsed < totalTime) {\r\n            const progress = Math.min((elapsed - travelTime) \/ fadeTime, 1);\r\n            const remaining = 1 - easeOutCubic(progress);\r\n            positionHtmlDot(dot, endPoint, remaining, deviceScale);\r\n            dot.style.opacity = String(dotOpacity * remaining);\r\n          } else {\r\n            positionHtmlDot(dot, endPoint, 0, deviceScale);\r\n            dot.style.opacity = \"0\";\r\n            state.frameId = 0;\r\n            state.timeoutId = window.setTimeout(runCycle, repeatDelay);\r\n            return;\r\n          }\r\n\r\n          state.frameId = window.requestAnimationFrame(render);\r\n        };\r\n\r\n        state.frameId = window.requestAnimationFrame(render);\r\n      };\r\n\r\n      state.timeoutId = window.setTimeout(runCycle, startDelay);\r\n    }\r\n\r\n    function showProcess(root) {\r\n      root.classList.add(\"ps-is-visible\");\r\n      animateCanvasRoute(root);\r\n      scheduleRouteDot(root);\r\n    }\r\n\r\n    function installCanvasResizeGuard(root) {\r\n      if (!(\"ResizeObserver\" in window) || root._psCanvasResizeObserver) return;\r\n\r\n      const track = root.querySelector(\".ps-process__track\");\r\n      if (!track) return;\r\n\r\n      const firstRect = track.getBoundingClientRect();\r\n      let lastWidth = firstRect.width;\r\n      let lastHeight = firstRect.height;\r\n      let resizeTimer = 0;\r\n\r\n      const resizeObserver = new ResizeObserver((entries) => {\r\n        const rect = entries[0]?.contentRect;\r\n        if (!rect) return;\r\n        const changed =\r\n          Math.abs(rect.width - lastWidth) >= 1 ||\r\n          Math.abs(rect.height - lastHeight) >= 1;\r\n        if (!changed) return;\r\n\r\n        lastWidth = rect.width;\r\n        lastHeight = rect.height;\r\n        window.clearTimeout(resizeTimer);\r\n        resizeTimer = window.setTimeout(() => {\r\n          if (!root.classList.contains(\"ps-is-visible\")) {\r\n            clearCanvasRoute(root);\r\n            return;\r\n          }\r\n\r\n          animateCanvasRoute(root);\r\n          scheduleRouteDot(root);\r\n        }, 140);\r\n      });\r\n\r\n      resizeObserver.observe(track);\r\n      root._psCanvasResizeObserver = resizeObserver;\r\n    }\r\n\r\n    function initProcess(root) {\r\n      if (!root || root.dataset.psProcessReady === \"true\") return;\r\n      root.dataset.psProcessReady = \"true\";\r\n      installCanvasResizeGuard(root);\r\n\r\n      const requestedThreshold = Number.parseFloat(root.dataset.enterThreshold || \"0.18\");\r\n      const threshold = Number.isFinite(requestedThreshold)\r\n        ? Math.min(Math.max(requestedThreshold, 0.05), 0.7)\r\n        : 0.18;\r\n      const resetThreshold = Math.min(0.08, Math.max(0.02, threshold * 0.35));\r\n\r\n      if (!(\"IntersectionObserver\" in window)) {\r\n        showProcess(root);\r\n        return;\r\n      }\r\n\r\n      const observer = new IntersectionObserver(\r\n        (entries) => {\r\n          entries.forEach((entry) => {\r\n            if (entry.isIntersecting && entry.intersectionRatio >= threshold) {\r\n              if (!root.classList.contains(\"ps-is-visible\")) {\r\n                showProcess(root);\r\n              }\r\n            } else if (!entry.isIntersecting || entry.intersectionRatio <= resetThreshold) {\r\n              \/* Reset immediately once the section is almost out of view.\r\n                 This guarantees a clean replay even if a tiny edge remains visible. *\/\r\n              root.classList.remove(\"ps-is-visible\");\r\n              stopCanvasRoute(root, true);\r\n              stopRouteDot(root);\r\n            }\r\n          });\r\n        },\r\n        { threshold: [0, resetThreshold, threshold] }\r\n      );\r\n\r\n      observer.observe(root);\r\n    }\r\n\r\n    function initAll(scope = document) {\r\n      if (scope.matches && scope.matches(SELECTOR)) initProcess(scope);\r\n      scope.querySelectorAll?.(SELECTOR).forEach(initProcess);\r\n    }\r\n\r\n    if (document.readyState === \"loading\") {\r\n      document.addEventListener(\"DOMContentLoaded\", () => initAll(), { once: true });\r\n    } else {\r\n      initAll();\r\n    }\r\n\r\n    \/* Supports Elementor editor\/AJAX widget rendering. *\/\r\n    window.addEventListener(\"elementor\/frontend\/init\", () => {\r\n      if (window.elementorFrontend?.hooks) {\r\n        window.elementorFrontend.hooks.addAction(\r\n          \"frontend\/element_ready\/html.default\",\r\n          ($scope) => initAll($scope?.[0] || document)\r\n        );\r\n      }\r\n    });\r\n  })();\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-786e08a e-con e-atomic-element e-flexbox-base e-786e08a-cfeac87 \" data-id=\"786e08a\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"786e08a\" data-e-type=\"e-flexbox\" data-id=\"786e08a\">\n    <div class=\"elementor-element elementor-element-30de904 e-flex e-con-boxed e-con e-parent\" data-id=\"30de904\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a72c6fd elementor-invisible elementor-widget elementor-widget-heading\" data-id=\"a72c6fd\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeInUp&quot;}\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Claim Your <span class=\"animated-guesswork\">Digital<\/span><br>\nReal Estate.\n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-95f55a9 elementor-invisible elementor-widget elementor-widget-heading\" data-id=\"95f55a9\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeInUp&quot;,&quot;_animation_delay&quot;:200}\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Your location deserves to be seen, trusted, and chosen.<br>\nPanoSky, we make spaces come alive.<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-19370d9 elementor-invisible elementor-widget elementor-widget-html\" data-id=\"19370d9\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeInUp&quot;,&quot;_animation_delay&quot;:400}\" data-widget_type=\"html.default\">\n\t\t\t\t\t<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n<svg class=\"ps-google-partner-svg\" id=\"Layer_2\" data-name=\"Layer 2\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 961.8 128.35\" preserveAspectRatio=\"xMidYMid meet\" role=\"img\" aria-label=\"Google Maps Content Partner\">\r\n  <defs>\r\n    <style>\r\n      \/* ==========================================================\r\n         SIZE CONTROLS \u2014 change only these three width values.\r\n         The height is calculated automatically from the SVG ratio.\r\n         ========================================================== *\/\r\n      .ps-google-partner-svg {\r\n        --ps-svg-width-desktop: 260px;\r\n        --ps-svg-width-tablet: 250px;\r\n        --ps-svg-width-mobile: 250px;\r\n\r\n        display: block;\r\n        width: var(--ps-svg-width-desktop);\r\n        max-width: 100%;\r\n        height: auto;\r\n        overflow: visible;\r\n      }\r\n\r\n      @media (max-width: 1024px) {\r\n        .ps-google-partner-svg {\r\n          width: var(--ps-svg-width-tablet);\r\n        }\r\n      }\r\n\r\n      @media (max-width: 767px) {\r\n        .ps-google-partner-svg {\r\n          width: var(--ps-svg-width-mobile);\r\n        }\r\n      }\r\n\r\n      .cls-1 {\r\n        fill: none;\r\n      }\r\n\r\n      .cls-2 {\r\n        fill: #4285f4;\r\n      }\r\n\r\n      .cls-3 {\r\n        fill: #757575;\r\n      }\r\n\r\n      .cls-4 {\r\n        fill: #1a73e8;\r\n      }\r\n\r\n      .cls-5 {\r\n        fill: #34a853;\r\n      }\r\n\r\n      .cls-6 {\r\n        fill: #fbbc04;\r\n      }\r\n\r\n      .cls-7 {\r\n        fill: #ea4335;\r\n      }\r\n    <\/style>\r\n  <\/defs>\r\n  <g id=\"Art\">\r\n    <g>\r\n      <path class=\"cls-2\" d=\"M132.45,93.27c-6.99,0-13.01-2.48-18.07-7.43-5.06-4.95-7.58-10.9-7.58-17.85s2.53-12.9,7.58-17.85c5.06-4.95,11.08-7.43,18.07-7.43s12.47,2.32,17.33,6.97l-4.87,4.87c-3.49-3.29-7.65-4.93-12.45-4.93-5.06,0-9.34,1.79-12.85,5.36-3.51,3.58-5.27,7.91-5.27,13.01s1.76,9.43,5.27,13.01c3.51,3.58,7.8,5.36,12.85,5.36s9.39-1.69,12.76-5.06c2.01-2.01,3.27-4.91,3.76-8.69h-16.52v-6.91h23.24c.25,1.23.37,2.67.37,4.32,0,6.78-1.99,12.17-5.98,16.15-4.52,4.73-10.4,7.09-17.63,7.09Z\"\/>\r\n      <path class=\"cls-7\" d=\"M186.46,88.62c-3.17,3.1-7.03,4.66-11.59,4.66s-8.43-1.55-11.59-4.66c-3.17-3.1-4.75-6.98-4.75-11.62s1.58-8.52,4.75-11.62c3.16-3.1,7.03-4.65,11.59-4.65s8.43,1.55,11.59,4.65c3.16,3.1,4.75,6.98,4.75,11.62s-1.58,8.52-4.75,11.62ZM168.39,84.05c1.81,1.87,3.97,2.8,6.47,2.8s4.66-.93,6.47-2.8c1.81-1.87,2.71-4.22,2.71-7.06s-.89-5.24-2.68-7.09c-1.79-1.85-3.96-2.77-6.5-2.77s-4.72.92-6.5,2.77c-1.79,1.85-2.68,4.21-2.68,7.09s.9,5.19,2.71,7.06Z\"\/>\r\n      <path class=\"cls-6\" d=\"M222.1,88.62c-3.17,3.1-7.03,4.66-11.59,4.66s-8.43-1.55-11.59-4.66c-3.17-3.1-4.75-6.98-4.75-11.62s1.58-8.52,4.75-11.62c3.16-3.1,7.03-4.65,11.59-4.65s8.43,1.55,11.59,4.65c3.16,3.1,4.75,6.98,4.75,11.62s-1.58,8.52-4.75,11.62ZM204.03,84.05c1.81,1.87,3.97,2.8,6.47,2.8s4.66-.93,6.47-2.8c1.81-1.87,2.71-4.22,2.71-7.06s-.89-5.24-2.68-7.09c-1.79-1.85-3.96-2.77-6.5-2.77s-4.72.92-6.5,2.77c-1.79,1.85-2.68,4.21-2.68,7.09s.9,5.19,2.71,7.06Z\"\/>\r\n      <path class=\"cls-2\" d=\"M245.52,107.88c-3.62,0-6.66-.97-9.13-2.9-2.47-1.93-4.23-4.17-5.3-6.72l6.23-2.59c.66,1.56,1.69,2.92,3.08,4.07,1.4,1.15,3.1,1.73,5.12,1.73,2.71,0,4.84-.82,6.38-2.47,1.54-1.64,2.31-4.01,2.31-7.09v-2.34h-.25c-2.01,2.47-4.87,3.7-8.57,3.7-4.15,0-7.79-1.58-10.91-4.75-3.12-3.16-4.69-6.99-4.69-11.47s1.56-8.37,4.69-11.56c3.12-3.18,6.76-4.78,10.91-4.78,1.85,0,3.52.35,5.02,1.05,1.5.7,2.68,1.56,3.55,2.59h.25v-2.65h6.78v29.22c0,5.67-1.45,9.92-4.35,12.73-2.9,2.82-6.61,4.22-11.13,4.22ZM246.02,86.86c2.47,0,4.53-.93,6.2-2.8,1.66-1.87,2.5-4.2,2.5-7s-.83-5.2-2.5-7.09c-1.66-1.89-3.73-2.84-6.2-2.84s-4.65.95-6.41,2.84c-1.77,1.89-2.65,4.25-2.65,7.09s.88,5.13,2.65,7c1.77,1.87,3.9,2.8,6.41,2.8Z\"\/>\r\n      <path class=\"cls-5\" d=\"M273.08,44.44v47.84h-7.15v-47.84h7.15Z\"\/>\r\n      <path class=\"cls-7\" d=\"M292.69,93.27c-4.6,0-8.45-1.56-11.53-4.69-3.08-3.12-4.62-6.99-4.62-11.59s1.49-8.67,4.47-11.71c2.98-3.04,6.61-4.56,10.88-4.56,1.97,0,3.8.36,5.49,1.08,1.69.72,3.08,1.64,4.19,2.77,1.11,1.13,1.99,2.23,2.65,3.3.66,1.07,1.19,2.14,1.6,3.21l.74,1.85-21.76,9c1.69,3.29,4.32,4.93,7.89,4.93,3.29,0,5.96-1.5,8.02-4.5l5.55,3.7c-1.23,1.85-2.98,3.51-5.24,4.99-2.26,1.48-5.04,2.22-8.32,2.22ZM283.63,76.5l14.55-6.04c-.41-1.03-1.17-1.86-2.28-2.5-1.11-.64-2.36-.96-3.76-.96-2.1,0-4.06.86-5.89,2.59-1.83,1.73-2.7,4.03-2.62,6.91Z\"\/>\r\n      <g>\r\n        <path class=\"cls-4\" d=\"M62.26,25.47c-2.79-.88-5.75-1.36-8.83-1.36-8.99,0-17.03,4.06-22.39,10.44l13.81,11.62,17.41-20.7Z\"\/>\r\n        <path class=\"cls-7\" d=\"M31.04,34.54c-4.27,5.08-6.85,11.64-6.85,18.8,0,5.5,1.1,9.96,2.89,13.95l17.77-21.12-13.81-11.62Z\"\/>\r\n        <path class=\"cls-2\" d=\"M53.43,42.16c6.18,0,11.18,5.01,11.18,11.18,0,2.75-.99,5.27-2.64,7.22,0,0,8.84-10.51,17.41-20.69-3.54-6.81-9.68-12.05-17.11-14.4l-17.41,20.7c2.05-2.45,5.13-4,8.58-4\"\/>\r\n        <path class=\"cls-6\" d=\"M53.43,64.52c-6.18,0-11.18-5.01-11.18-11.18,0-2.73.98-5.24,2.61-7.18l-17.77,21.12c3.04,6.74,8.09,12.14,13.29,18.95l21.6-25.68c-2.05,2.42-5.12,3.96-8.54,3.96\"\/>\r\n        <path class=\"cls-5\" d=\"M61.54,93.25c9.76-15.25,21.13-22.18,21.13-39.91,0-4.86-1.19-9.44-3.29-13.47l-39.01,46.37c1.65,2.17,3.32,4.47,4.95,7.01,5.93,9.16,4.29,14.66,8.11,14.66s2.18-5.5,8.11-14.66\"\/>\r\n      <\/g>\r\n      <g>\r\n        <path class=\"cls-2\" d=\"M330.11,93.11h-5.52v-44.25h5.52l14.94,26.95h.24l14.94-26.95h5.52v44.25h-5.52v-26.26l.24-7.42h-.24l-13.44,24.29h-3.24l-13.44-24.29h-.24l.24,7.42v26.26Z\"\/>\r\n        <path class=\"cls-7\" d=\"M384.89,61.84c4.08,0,7.3,1.12,9.66,3.37,2.36,2.25,3.54,5.33,3.54,9.24v18.66h-5.28v-4.2h-.24c-2.28,3.46-5.32,5.19-9.12,5.19-3.24,0-5.95-.99-8.13-2.97-2.18-1.98-3.27-4.45-3.27-7.42,0-3.13,1.15-5.62,3.45-7.48,2.3-1.85,5.37-2.78,9.21-2.78,3.28,0,5.98.62,8.1,1.85v-1.3c0-1.98-.76-3.66-2.28-5.04-1.52-1.38-3.3-2.07-5.34-2.07-3.08,0-5.52,1.34-7.32,4.02l-4.86-3.15c2.68-3.96,6.64-5.93,11.88-5.93ZM377.75,83.84c0,1.48.61,2.72,1.83,3.71,1.22.99,2.65,1.48,4.29,1.48,2.32,0,4.39-.88,6.21-2.66,1.82-1.77,2.73-3.85,2.73-6.24-1.72-1.4-4.12-2.1-7.2-2.1-2.24,0-4.11.56-5.61,1.67-1.5,1.11-2.25,2.49-2.25,4.14Z\"\/>\r\n        <path class=\"cls-6\" d=\"M420.83,94.1c-2.16,0-4.13-.47-5.91-1.42-1.78-.95-3.15-2.2-4.11-3.77h-.24l.24,4.2v13.35h-5.52v-43.63h5.28v4.2h.24c.96-1.56,2.33-2.82,4.11-3.77,1.78-.95,3.75-1.42,5.91-1.42,3.88,0,7.16,1.57,9.84,4.7,2.76,3.17,4.14,6.98,4.14,11.43s-1.38,8.3-4.14,11.43c-2.68,3.13-5.96,4.7-9.84,4.7ZM419.93,88.91c2.64,0,4.86-1.03,6.66-3.09,1.8-2.02,2.7-4.64,2.7-7.85s-.9-5.79-2.7-7.85c-1.8-2.06-4.02-3.09-6.66-3.09s-4.92,1.03-6.72,3.09c-1.76,2.06-2.64,4.68-2.64,7.85s.88,5.85,2.64,7.91c1.8,2.02,4.04,3.03,6.72,3.03Z\"\/>\r\n        <path class=\"cls-5\" d=\"M463.25,84.71c0,2.64-1.12,4.86-3.36,6.67-2.24,1.81-5.06,2.72-8.46,2.72-2.96,0-5.56-.79-7.8-2.38-2.24-1.58-3.84-3.68-4.8-6.27l4.92-2.16c.72,1.81,1.77,3.22,3.15,4.23,1.38,1.01,2.89,1.51,4.53,1.51,1.76,0,3.23-.39,4.41-1.17,1.18-.78,1.77-1.71,1.77-2.78,0-1.94-1.44-3.36-4.32-4.26l-5.04-1.3c-5.72-1.48-8.58-4.33-8.58-8.53,0-2.76,1.09-4.98,3.27-6.64,2.18-1.67,4.97-2.5,8.37-2.5,2.6,0,4.95.64,7.05,1.92,2.1,1.28,3.57,2.99,4.41,5.13l-4.92,2.1c-.56-1.28-1.47-2.28-2.73-3-1.26-.72-2.67-1.08-4.23-1.08-1.44,0-2.73.37-3.87,1.11-1.14.74-1.71,1.65-1.71,2.72,0,1.73,1.58,2.97,4.74,3.71l4.44,1.17c5.84,1.48,8.76,4.51,8.76,9.08Z\"\/>\r\n        <path class=\"cls-3\" d=\"M503.63,94.1c-6.36,0-11.68-2.2-15.96-6.61-4.24-4.41-6.36-9.91-6.36-16.5s2.12-12.07,6.36-16.44c4.24-4.45,9.56-6.67,15.96-6.67s11.74,2.41,15.78,7.23l-3.96,3.96c-3.08-3.83-7.02-5.75-11.82-5.75s-8.74,1.65-11.94,4.94c-3.16,3.26-4.74,7.5-4.74,12.73s1.58,9.48,4.74,12.73c3.2,3.3,7.18,4.94,11.94,4.94,5,0,9.34-2.16,13.02-6.49l4.02,4.02c-2.04,2.51-4.54,4.46-7.5,5.84-2.96,1.38-6.14,2.07-9.54,2.07Z\"\/>\r\n        <path class=\"cls-3\" d=\"M524.51,77.97c0-4.66,1.42-8.51,4.26-11.56,2.88-3.05,6.5-4.57,10.86-4.57s7.96,1.52,10.8,4.57c2.88,3.05,4.32,6.9,4.32,11.56s-1.44,8.55-4.32,11.56c-2.84,3.05-6.44,4.57-10.8,4.57s-7.98-1.52-10.86-4.57c-2.84-3.05-4.26-6.9-4.26-11.56ZM530.03,77.97c0,3.25.92,5.89,2.76,7.91,1.84,2.02,4.12,3.03,6.84,3.03s5-1.01,6.84-3.03c1.84-2.02,2.76-4.66,2.76-7.91s-.92-5.83-2.76-7.85c-1.88-2.06-4.16-3.09-6.84-3.09s-4.96,1.03-6.84,3.09c-1.84,2.02-2.76,4.63-2.76,7.85Z\"\/>\r\n        <path class=\"cls-3\" d=\"M560.39,62.83h5.28v4.2h.24c.84-1.48,2.13-2.72,3.87-3.71,1.74-.99,3.55-1.48,5.43-1.48,3.6,0,6.37,1.06,8.31,3.18,1.94,2.12,2.91,5.14,2.91,9.05v19.03h-5.52v-18.66c-.12-4.94-2.54-7.42-7.26-7.42-2.2,0-4.04.92-5.52,2.75-1.48,1.83-2.22,4.03-2.22,6.58v16.75h-5.52v-30.28Z\"\/>\r\n        <path class=\"cls-3\" d=\"M604.25,93.61c-2.4,0-4.39-.76-5.97-2.29-1.58-1.52-2.39-3.65-2.43-6.37v-16.93h-5.16v-5.19h5.16v-9.27h5.52v9.27h7.2v5.19h-7.2v15.08c0,2.02.38,3.39,1.14,4.11.76.72,1.62,1.08,2.58,1.08.44,0,.87-.05,1.29-.15.42-.1.81-.24,1.17-.4l1.74,5.07c-1.44.53-3.12.8-5.04.8Z\"\/>\r\n        <path class=\"cls-3\" d=\"M627.95,94.1c-4.32,0-7.88-1.52-10.68-4.57-2.8-3.05-4.2-6.9-4.2-11.56s1.36-8.46,4.08-11.53c2.72-3.07,6.2-4.6,10.44-4.6s7.83,1.45,10.41,4.36,3.87,6.97,3.87,12.21l-.06.62h-23.1c.08,2.97,1.04,5.36,2.88,7.17,1.84,1.81,4.04,2.72,6.6,2.72,3.52,0,6.28-1.81,8.28-5.44l4.92,2.47c-1.32,2.56-3.15,4.55-5.49,6-2.34,1.44-4.99,2.16-7.95,2.16ZM619.13,74.33h16.86c-.16-2.1-.99-3.84-2.49-5.22-1.5-1.38-3.51-2.07-6.03-2.07-2.08,0-3.87.66-5.37,1.98s-2.49,3.09-2.97,5.31Z\"\/>\r\n        <path class=\"cls-3\" d=\"M648.11,62.83h5.28v4.2h.24c.84-1.48,2.13-2.72,3.87-3.71,1.74-.99,3.55-1.48,5.43-1.48,3.6,0,6.37,1.06,8.31,3.18,1.94,2.12,2.91,5.14,2.91,9.05v19.03h-5.52v-18.66c-.12-4.94-2.54-7.42-7.26-7.42-2.2,0-4.04.92-5.52,2.75-1.48,1.83-2.22,4.03-2.22,6.58v16.75h-5.52v-30.28Z\"\/>\r\n        <path class=\"cls-3\" d=\"M691.97,93.61c-2.4,0-4.39-.76-5.97-2.29-1.58-1.52-2.39-3.65-2.43-6.37v-16.93h-5.16v-5.19h5.16v-9.27h5.52v9.27h7.2v5.19h-7.2v15.08c0,2.02.38,3.39,1.14,4.11.76.72,1.62,1.08,2.58,1.08.44,0,.87-.05,1.29-.15.42-.1.81-.24,1.17-.4l1.74,5.07c-1.44.53-3.12.8-5.04.8Z\"\/>\r\n        <path class=\"cls-3\" d=\"M723.65,75.19v17.92h-5.52v-44.25h14.64c3.72,0,6.88,1.28,9.48,3.83,2.64,2.55,3.96,5.67,3.96,9.33s-1.32,6.88-3.96,9.39c-2.56,2.51-5.72,3.77-9.48,3.77h-9.12ZM723.65,54.3v15.45h9.24c2.2,0,4.02-.76,5.46-2.29,1.48-1.52,2.22-3.34,2.22-5.44s-.74-3.85-2.22-5.38c-1.44-1.57-3.26-2.35-5.46-2.35h-9.24Z\"\/>\r\n        <path class=\"cls-3\" d=\"M762.17,61.84c4.08,0,7.3,1.12,9.66,3.37,2.36,2.25,3.54,5.33,3.54,9.24v18.66h-5.28v-4.2h-.24c-2.28,3.46-5.32,5.19-9.12,5.19-3.24,0-5.95-.99-8.13-2.97-2.18-1.98-3.27-4.45-3.27-7.42,0-3.13,1.15-5.62,3.45-7.48,2.3-1.85,5.37-2.78,9.21-2.78,3.28,0,5.98.62,8.1,1.85v-1.3c0-1.98-.76-3.66-2.28-5.04-1.52-1.38-3.3-2.07-5.34-2.07-3.08,0-5.52,1.34-7.32,4.02l-4.86-3.15c2.68-3.96,6.64-5.93,11.88-5.93ZM755.03,83.84c0,1.48.61,2.72,1.83,3.71,1.22.99,2.65,1.48,4.29,1.48,2.32,0,4.39-.88,6.21-2.66,1.82-1.77,2.73-3.85,2.73-6.24-1.72-1.4-4.12-2.1-7.2-2.1-2.24,0-4.11.56-5.61,1.67-1.5,1.11-2.25,2.49-2.25,4.14Z\"\/>\r\n        <path class=\"cls-3\" d=\"M782.81,62.83h5.28v4.94h.24c1.64-3.87,5.02-5.81,10.14-5.81l1.14.12v5.93l-2.46-.25c-2.56,0-4.67.81-6.33,2.44-1.66,1.63-2.49,3.7-2.49,6.21v16.69h-5.52v-30.28ZM817.25,93.61c-2.4,0-4.39-.76-5.97-2.29-1.58-1.52-2.39-3.65-2.43-6.37v-16.93h-5.16v-5.19h5.16v-9.27h5.52v9.27h7.2v5.19h-7.2v15.08c0,2.02.38,3.39,1.14,4.11.76.72,1.62,1.08,2.58,1.08.44,0,.87-.05,1.29-.15.42-.1.81-.24,1.17-.4l1.74,5.07c-1.44.53-3.12.8-5.04.8Z\"\/>\r\n        <path class=\"cls-3\" d=\"M828.35,62.83h5.28v4.2h.24c.84-1.48,2.13-2.72,3.87-3.71,1.74-.99,3.55-1.48,5.43-1.48,3.6,0,6.37,1.06,8.31,3.18,1.94,2.12,2.91,5.14,2.91,9.05v19.03h-5.52v-18.66c-.12-4.94-2.54-7.42-7.26-7.42-2.2,0-4.04.92-5.52,2.75-1.48,1.83-2.22,4.03-2.22,6.58v16.75h-5.52v-30.28Z\"\/>\r\n        <path class=\"cls-3\" d=\"M875.27,94.1c-4.32,0-7.88-1.52-10.68-4.57-2.8-3.05-4.2-6.9-4.2-11.56s1.36-8.46,4.08-11.53c2.72-3.07,6.2-4.6,10.44-4.6s7.83,1.45,10.41,4.36,3.87,6.97,3.87,12.21l-.06.62h-23.1c.08,2.97,1.04,5.36,2.88,7.17,1.84,1.81,4.04,2.72,6.6,2.72,3.52,0,6.28-1.81,8.28-5.44l4.92,2.47c-1.32,2.56-3.15,4.55-5.49,6-2.34,1.44-4.99,2.16-7.95,2.16ZM866.45,74.33h16.86c-.16-2.1-.99-3.84-2.49-5.22-1.5-1.38-3.51-2.07-6.03-2.07-2.08,0-3.87.66-5.37,1.98s-2.49,3.09-2.97,5.31Z\"\/>\r\n        <path class=\"cls-3\" d=\"M900.94,93.11h-5.52v-30.28h5.28v4.94h.24c.56-1.61,1.71-2.98,3.45-4.11,1.74-1.13,3.45-1.7,5.13-1.7s2.96.25,4.08.74l-1.68,5.5c-.68-.29-1.76-.43-3.24-.43-2.08,0-3.89.87-5.43,2.6-1.54,1.73-2.31,3.75-2.31,6.06v16.69Z\"\/>\r\n        <path class=\"cls-3\" d=\"M939.7,84.71c0,2.64-1.12,4.86-3.36,6.67-2.24,1.81-5.06,2.72-8.46,2.72-2.96,0-5.56-.79-7.8-2.38-2.24-1.58-3.84-3.68-4.8-6.27l4.92-2.16c.72,1.81,1.77,3.22,3.15,4.23,1.38,1.01,2.89,1.51,4.53,1.51,1.76,0,3.23-.39,4.41-1.17,1.18-.78,1.77-1.71,1.77-2.78,0-1.94-1.44-3.36-4.32-4.26l-5.04-1.3c-5.72-1.48-8.58-4.33-8.58-8.53,0-2.76,1.09-4.98,3.27-6.64,2.18-1.67,4.97-2.5,8.37-2.5,2.6,0,4.95.64,7.05,1.92,2.1,1.28,3.57,2.99,4.41,5.13l-4.92,2.1c-.56-1.28-1.47-2.28-2.73-3-1.26-.72-2.67-1.08-4.23-1.08-1.44,0-2.73.37-3.87,1.11-1.14.74-1.71,1.65-1.71,2.72,0,1.73,1.58,2.97,4.74,3.71l4.44,1.17c5.84,1.48,8.76,4.51,8.76,9.08Z\"\/>\r\n      <\/g>\r\n    <\/g>\r\n    <rect class=\"cls-1\" width=\"961.8\" height=\"128.35\"\/>\r\n  <\/g>\r\n<\/svg>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-faa0a17 elementor-align-center elementor-invisible elementor-widget elementor-widget-button\" data-id=\"faa0a17\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeInUp&quot;,&quot;_animation_delay&quot;:600}\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"#\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Schedule a Consultation<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>AUTHORIZED PARTNER Google MapsIntergration. We illuminate you location on theworld&#8217;s largest discovery engine. &bull; DIRECT PUBLISHING &bull; VERIFIED STREETVIEW Direct-to-Grid Integration. Most businesses are invisible where it matters most\u2014on Google Maps. PanoSky connects your location directly to Google\u2019s knowledge graph, powering visibility, trust and discovery. version=&#8221;1.1&#8243; xml:space=&#8221;preserve&#8221; style=&#8221;&#8221; x=&#8221;0px&#8221; y=&#8221;0px&#8221; fill-rule=&#8221;evenodd&#8221; clip-rule=&#8221;evenodd&#8221; stroke-linejoin=&#8221;round&#8221; stroke-miterlimit=&#8221;2&#8243;&gt; Google [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-1307","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Google Maps - PanoSky Systems<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/panosky.com\/?page_id=1307\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Google Maps - PanoSky Systems\" \/>\n<meta property=\"og:description\" content=\"AUTHORIZED PARTNER Google MapsIntergration. We illuminate you location on theworld&#8217;s largest discovery engine. &bull; DIRECT PUBLISHING &bull; VERIFIED STREETVIEW Direct-to-Grid Integration. Most businesses are invisible where it matters most\u2014on Google Maps. PanoSky connects your location directly to Google\u2019s knowledge graph, powering visibility, trust and discovery. version=&#8221;1.1&#8243; xml:space=&#8221;preserve&#8221; style=&#8221;&#8221; x=&#8221;0px&#8221; y=&#8221;0px&#8221; fill-rule=&#8221;evenodd&#8221; clip-rule=&#8221;evenodd&#8221; stroke-linejoin=&#8221;round&#8221; stroke-miterlimit=&#8221;2&#8243;&gt; Google [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/panosky.com\/?page_id=1307\" \/>\n<meta property=\"og:site_name\" content=\"PanoSky Systems\" \/>\n<meta property=\"article:modified_time\" content=\"2026-08-25T08:26:31+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/panosky.com\/wp-content\/uploads\/2026\/08\/panosky-street-to-inside-transparent-3k-v2-1024x702.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"702\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"24 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/panosky.com\\\/?page_id=1307\",\"url\":\"https:\\\/\\\/panosky.com\\\/?page_id=1307\",\"name\":\"Google Maps - PanoSky Systems\",\"isPartOf\":{\"@id\":\"http:\\\/\\\/beepano.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/panosky.com\\\/?page_id=1307#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/panosky.com\\\/?page_id=1307#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/panosky.com\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/panosky-street-to-inside-transparent-3k-v2-1024x702.png\",\"datePublished\":\"2026-07-22T06:03:20+00:00\",\"dateModified\":\"2026-08-25T08:26:31+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/panosky.com\\\/?page_id=1307#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/panosky.com\\\/?page_id=1307\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/panosky.com\\\/?page_id=1307#primaryimage\",\"url\":\"https:\\\/\\\/panosky.com\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/panosky-street-to-inside-transparent-3k-v2-scaled.png\",\"contentUrl\":\"https:\\\/\\\/panosky.com\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/panosky-street-to-inside-transparent-3k-v2-scaled.png\",\"width\":2560,\"height\":1754},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/panosky.com\\\/?page_id=1307#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/panosky.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Google Maps\"}]},{\"@type\":\"WebSite\",\"@id\":\"http:\\\/\\\/beepano.com\\\/#website\",\"url\":\"http:\\\/\\\/beepano.com\\\/\",\"name\":\"PanoSky Systems\",\"description\":\"\",\"publisher\":{\"@id\":\"http:\\\/\\\/beepano.com\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"http:\\\/\\\/beepano.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"http:\\\/\\\/beepano.com\\\/#organization\",\"name\":\"PanoSky Systems\",\"url\":\"http:\\\/\\\/beepano.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"http:\\\/\\\/beepano.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/panosky.com\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/PanoSky-Logo-for-website-temp-01-1.png\",\"contentUrl\":\"https:\\\/\\\/panosky.com\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/PanoSky-Logo-for-website-temp-01-1.png\",\"width\":1024,\"height\":221,\"caption\":\"PanoSky Systems\"},\"image\":{\"@id\":\"http:\\\/\\\/beepano.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Google Maps - PanoSky Systems","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/panosky.com\/?page_id=1307","og_locale":"en_US","og_type":"article","og_title":"Google Maps - PanoSky Systems","og_description":"AUTHORIZED PARTNER Google MapsIntergration. We illuminate you location on theworld&#8217;s largest discovery engine. &bull; DIRECT PUBLISHING &bull; VERIFIED STREETVIEW Direct-to-Grid Integration. Most businesses are invisible where it matters most\u2014on Google Maps. PanoSky connects your location directly to Google\u2019s knowledge graph, powering visibility, trust and discovery. version=&#8221;1.1&#8243; xml:space=&#8221;preserve&#8221; style=&#8221;&#8221; x=&#8221;0px&#8221; y=&#8221;0px&#8221; fill-rule=&#8221;evenodd&#8221; clip-rule=&#8221;evenodd&#8221; stroke-linejoin=&#8221;round&#8221; stroke-miterlimit=&#8221;2&#8243;&gt; Google [&hellip;]","og_url":"https:\/\/panosky.com\/?page_id=1307","og_site_name":"PanoSky Systems","article_modified_time":"2026-08-25T08:26:31+00:00","og_image":[{"width":1024,"height":702,"url":"https:\/\/panosky.com\/wp-content\/uploads\/2026\/08\/panosky-street-to-inside-transparent-3k-v2-1024x702.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"24 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/panosky.com\/?page_id=1307","url":"https:\/\/panosky.com\/?page_id=1307","name":"Google Maps - PanoSky Systems","isPartOf":{"@id":"http:\/\/beepano.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/panosky.com\/?page_id=1307#primaryimage"},"image":{"@id":"https:\/\/panosky.com\/?page_id=1307#primaryimage"},"thumbnailUrl":"https:\/\/panosky.com\/wp-content\/uploads\/2026\/08\/panosky-street-to-inside-transparent-3k-v2-1024x702.png","datePublished":"2026-07-22T06:03:20+00:00","dateModified":"2026-08-25T08:26:31+00:00","breadcrumb":{"@id":"https:\/\/panosky.com\/?page_id=1307#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/panosky.com\/?page_id=1307"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/panosky.com\/?page_id=1307#primaryimage","url":"https:\/\/panosky.com\/wp-content\/uploads\/2026\/08\/panosky-street-to-inside-transparent-3k-v2-scaled.png","contentUrl":"https:\/\/panosky.com\/wp-content\/uploads\/2026\/08\/panosky-street-to-inside-transparent-3k-v2-scaled.png","width":2560,"height":1754},{"@type":"BreadcrumbList","@id":"https:\/\/panosky.com\/?page_id=1307#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/panosky.com\/"},{"@type":"ListItem","position":2,"name":"Google Maps"}]},{"@type":"WebSite","@id":"http:\/\/beepano.com\/#website","url":"http:\/\/beepano.com\/","name":"PanoSky Systems","description":"","publisher":{"@id":"http:\/\/beepano.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"http:\/\/beepano.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"http:\/\/beepano.com\/#organization","name":"PanoSky Systems","url":"http:\/\/beepano.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"http:\/\/beepano.com\/#\/schema\/logo\/image\/","url":"https:\/\/panosky.com\/wp-content\/uploads\/2026\/07\/PanoSky-Logo-for-website-temp-01-1.png","contentUrl":"https:\/\/panosky.com\/wp-content\/uploads\/2026\/07\/PanoSky-Logo-for-website-temp-01-1.png","width":1024,"height":221,"caption":"PanoSky Systems"},"image":{"@id":"http:\/\/beepano.com\/#\/schema\/logo\/image\/"}}]}},"brizy_media":[],"_links":{"self":[{"href":"https:\/\/panosky.com\/index.php?rest_route=\/wp\/v2\/pages\/1307","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/panosky.com\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/panosky.com\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/panosky.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/panosky.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1307"}],"version-history":[{"count":5,"href":"https:\/\/panosky.com\/index.php?rest_route=\/wp\/v2\/pages\/1307\/revisions"}],"predecessor-version":[{"id":2921,"href":"https:\/\/panosky.com\/index.php?rest_route=\/wp\/v2\/pages\/1307\/revisions\/2921"}],"wp:attachment":[{"href":"https:\/\/panosky.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1307"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}