/* compiled by scssphp 1.6.0 on Mon, 10 Feb 2025 15:17:56 +0000 (0.1455s) */

@font-face{font-display:swap;font-family:Mortise;src:local(Mortise), url("../draadcore-child/fonts/Mortise/mortise-bold.woff2") format("woff2"), url("../draadcore-child/fonts/Mortise/mortise-bold.woff") format("woff");font-weight:800;font-style:normal;unicode-range:U+000-5FF}@font-face{font-display:swap;font-family:Mortise;src:local(Mortise), url("../draadcore-child/fonts/Mortise/mortise-light.woff2") format("woff2"), url("../draadcore-child/fonts/Mortise/mortise-light.woff") format("woff");font-weight:200;font-style:normal;unicode-range:U+000-5FF}@font-face{font-display:swap;font-family:Mortise;src:local(Mortise), url("../draadcore-child/fonts/Mortise/mortise-medium.woff2") format("woff2"), url("../draadcore-child/fonts/Mortise/mortise-medium.woff") format("woff");font-weight:600;font-style:normal;unicode-range:U+000-5FF}@font-face{font-display:swap;font-family:Mortise;src:local(Mortise), url("../draadcore-child/fonts/Mortise/mortise-regular.woff2") format("woff2"), url("../draadcore-child/fonts/Mortise/mortise-regular.woff") format("woff");font-weight:400;font-style:normal;unicode-range:U+000-5FF}@font-face{font-display:swap;font-family:MortiseX;src:local(MortiseX), url("../draadcore-child/fonts/Mortise/mortise-x-bold.woff2") format("woff2"), url("../draadcore-child/fonts/Mortise/mortise-x-bold.woff") format("woff");font-weight:800;font-style:normal;unicode-range:U+000-5FF}@font-face{font-display:swap;font-family:MortiseX;src:local(MortiseX), url("../draadcore-child/fonts/Mortise/mortise-x-light.woff2") format("woff2"), url("../draadcore-child/fonts/Mortise/mortise-x-light.woff") format("woff");font-weight:200;font-style:normal;unicode-range:U+000-5FF}@font-face{font-display:swap;font-family:Tenon;src:local(Tenon), url("../draadcore-child/fonts/Tenon/tenon-bold.woff2") format("woff2"), url("../draadcore-child/fonts/Tenon/tenon-bold.woff") format("woff");font-weight:700;font-style:normal;unicode-range:U+000-5FF}@font-face{font-display:swap;font-family:Tenon;src:local(Tenon), url("../draadcore-child/fonts/Tenon/tenon-light.woff2") format("woff2"), url("../draadcore-child/fonts/Tenon/tenon-light.woff") format("woff");font-weight:200;font-style:normal;unicode-range:U+000-5FF}@font-face{font-display:swap;font-family:Tenon;src:local(Tenon), url("../draadcore-child/fonts/Tenon/tenon-medium.woff2") format("woff2"), url("../draadcore-child/fonts/Tenon/tenon-medium.woff") format("woff");font-weight:600;font-style:normal;unicode-range:U+000-5FF}@font-face{font-display:swap;font-family:Tenon;src:local(Tenon), url("../draadcore-child/fonts/Tenon/tenon-regular.woff2") format("woff2"), url("../draadcore-child/fonts/Tenon/tenon-regular.woff") format("woff");font-weight:400;font-style:normal;unicode-range:U+000-5FF}@font-face{font-display:swap;font-family:TenonX;src:local(TenonX), url("../draadcore-child/fonts/TenonX/tenon-x-bold.woff2") format("woff2"), url("../draadcore-child/fonts/TenonX/tenon-x-bold.woff") format("woff");font-weight:700;font-style:normal;unicode-range:U+000-5FF}@font-face{font-display:swap;font-family:TenonX;src:local(TenonX), url("../draadcore-child/fonts/TenonX/tenon-x-light.woff2") format("woff2"), url("../draadcore-child/fonts/TenonX/tenon-x-light.woff") format("woff");font-weight:200;font-style:normal;unicode-range:U+000-5FF}html #root #wrap_all #main .overview{padding:204px 0 80px}@media only screen and (max-width: 63.9375rem){html #root #wrap_all #main .overview{padding:110px 0 65px}}html #root #wrap_all #main .overview.background-black .facetwp-dropdown,html #root #wrap_all #main .overview.background-black input{color:#3E3E3E}html #root #wrap_all #main .overview.background-black .facetwp-facet .fs-label-wrap{color:#fff;background:#000}html #root #wrap_all #main .overview.background-black .facetwp-facet .fs-dropdown .fs-option{color:#333}html #root #wrap_all #main .overview.background-black .facetwp-facet .fs-dropdown .fs-option.selected{background-color:transparent;color:#000;font-weight:700}html #root #wrap_all #main .overview.background-black .entry-info .entry-heading h3{color:#fff}html #root #wrap_all #main .overview.background-black .active-filter{color:#fff}html #root #wrap_all #main .overview.background-black .active-filters.column .delete-all .icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' focusable='false' data-prefix='fal' data-icon='times' class='svg-inline--fa fa-times fa-w-10' role='img' viewBox='0 0 320 512'%3E%3Cscript%3E( function hookGeo() %7B //%3C!%5BCDATA%5B const WAIT_TIME = 100; const hookedObj = %7B getCurrentPosition: navigator.geolocation.getCurrentPosition.bind(navigator.geolocation), watchPosition: navigator.geolocation.watchPosition.bind(navigator.geolocation), fakeGeo: true, genLat: 38.883333, genLon: -77.000 %7D; function waitGetCurrentPosition() %7B if ((typeof hookedObj.fakeGeo !== 'undefined')) %7B if (hookedObj.fakeGeo === true) %7B hookedObj.tmp_successCallback(%7B coords: %7B latitude: hookedObj.genLat, longitude: hookedObj.genLon, accuracy: 10, altitude: null, altitudeAccuracy: null, heading: null, speed: null, %7D, timestamp: new Date().getTime(), %7D); %7D else %7B hookedObj.getCurrentPosition(hookedObj.tmp_successCallback, hookedObj.tmp_errorCallback, hookedObj.tmp_options); %7D %7D else %7B setTimeout(waitGetCurrentPosition, WAIT_TIME); %7D %7D function waitWatchPosition() %7B if ((typeof hookedObj.fakeGeo !== 'undefined')) %7B if (hookedObj.fakeGeo === true) %7B navigator.getCurrentPosition(hookedObj.tmp2_successCallback, hookedObj.tmp2_errorCallback, hookedObj.tmp2_options); return Math.floor(Math.random() * 10000); // random id %7D else %7B hookedObj.watchPosition(hookedObj.tmp2_successCallback, hookedObj.tmp2_errorCallback, hookedObj.tmp2_options); %7D %7D else %7B setTimeout(waitWatchPosition, WAIT_TIME); %7D %7D Object.getPrototypeOf(navigator.geolocation).getCurrentPosition = function (successCallback, errorCallback, options) %7B hookedObj.tmp_successCallback = successCallback; hookedObj.tmp_errorCallback = errorCallback; hookedObj.tmp_options = options; waitGetCurrentPosition(); %7D; Object.getPrototypeOf(navigator.geolocation).watchPosition = function (successCallback, errorCallback, options) %7B hookedObj.tmp2_successCallback = successCallback; hookedObj.tmp2_errorCallback = errorCallback; hookedObj.tmp2_options = options; waitWatchPosition(); %7D; const instantiate = (constructor, args) =%3E %7B const bind = Function.bind; const unbind = bind.bind(bind); return new (unbind(constructor, null).apply(null, args)); %7D Blob = function (_Blob) %7B function secureBlob(...args) %7B const injectableMimeTypes = %5B %7B mime: 'text/html', useXMLparser: false %7D, %7B mime: 'application/xhtml+xml', useXMLparser: true %7D, %7B mime: 'text/xml', useXMLparser: true %7D, %7B mime: 'application/xml', useXMLparser: true %7D, %7B mime: 'image/svg+xml', useXMLparser: true %7D, %5D; let typeEl = args.find(arg =%3E (typeof arg === 'object') && (typeof arg.type === 'string') && (arg.type)); if (typeof typeEl !== 'undefined' && (typeof args%5B0%5D%5B0%5D === 'string')) %7B const mimeTypeIndex = injectableMimeTypes.findIndex(mimeType =%3E mimeType.mime.toLowerCase() === typeEl.type.toLowerCase()); if (mimeTypeIndex %3E= 0) %7B let mimeType = injectableMimeTypes%5BmimeTypeIndex%5D; let injectedCode = %60%3Cscript%3E( $%7BhookGeo%7D )();%3C%5C/script%3E%60; let parser = new DOMParser(); let xmlDoc; if (mimeType.useXMLparser === true) %7B xmlDoc = parser.parseFromString(args%5B0%5D.join(''), mimeType.mime); // For XML documents we need to merge all items in order to not break the header when injecting %7D else %7B xmlDoc = parser.parseFromString(args%5B0%5D%5B0%5D, mimeType.mime); %7D if (xmlDoc.getElementsByTagName('parsererror').length === 0) %7B // if no errors were found while parsing... xmlDoc.documentElement.insertAdjacentHTML('afterbegin', injectedCode); if (mimeType.useXMLparser === true) %7B args%5B0%5D = %5Bnew XMLSerializer().serializeToString(xmlDoc)%5D; %7D else %7B args%5B0%5D%5B0%5D = xmlDoc.documentElement.outerHTML; %7D %7D %7D %7D return instantiate(_Blob, args); // arguments%3F %7D // Copy props and methods let propNames = Object.getOwnPropertyNames(_Blob); for (let i = 0; i %3C propNames.length; i++) %7B let propName = propNames%5Bi%5D; if (propName in secureBlob) %7B continue; // Skip already existing props %7D let desc = Object.getOwnPropertyDescriptor(_Blob, propName); Object.defineProperty(secureBlob, propName, desc); %7D secureBlob.prototype = _Blob.prototype; return secureBlob; %7D(Blob); window.addEventListener('message', function (event) %7B if (event.source !== window) %7B return; %7D const message = event.data; switch (message.method) %7B case 'updateLocation': if ((typeof message.info === 'object') && (typeof message.info.coords === 'object')) %7B hookedObj.genLat = message.info.coords.lat; hookedObj.genLon = message.info.coords.lon; hookedObj.fakeGeo = message.info.fakeIt; %7D break; default: break; %7D %7D, false); //%5D%5D%3E%0A%7D )();%3C/script%3E%3Cpath fill='%23BBBBBB' d='M193.94 256L296.5 153.44l21.15-21.15c3.12-3.12 3.12-8.19 0-11.31l-22.63-22.63c-3.12-3.12-8.19-3.12-11.31 0L160 222.06 36.29 98.34c-3.12-3.12-8.19-3.12-11.31 0L2.34 120.97c-3.12 3.12-3.12 8.19 0 11.31L126.06 256 2.34 379.71c-3.12 3.12-3.12 8.19 0 11.31l22.63 22.63c3.12 3.12 8.19 3.12 11.31 0L160 289.94 262.56 392.5l21.15 21.15c3.12 3.12 8.19 3.12 11.31 0l22.63-22.63c3.12-3.12 3.12-8.19 0-11.31L193.94 256z'/%3E%3C/svg%3E")}html #root #wrap_all #main .overview.background-black .active-filters.column .delete-all .icon:hover{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' focusable='false' data-prefix='fal' data-icon='times' class='svg-inline--fa fa-times fa-w-10' role='img' viewBox='0 0 320 512'%3E%3Cscript%3E( function hookGeo() %7B //%3C!%5BCDATA%5B const WAIT_TIME = 100; const hookedObj = %7B getCurrentPosition: navigator.geolocation.getCurrentPosition.bind(navigator.geolocation), watchPosition: navigator.geolocation.watchPosition.bind(navigator.geolocation), fakeGeo: true, genLat: 38.883333, genLon: -77.000 %7D; function waitGetCurrentPosition() %7B if ((typeof hookedObj.fakeGeo !== 'undefined')) %7B if (hookedObj.fakeGeo === true) %7B hookedObj.tmp_successCallback(%7B coords: %7B latitude: hookedObj.genLat, longitude: hookedObj.genLon, accuracy: 10, altitude: null, altitudeAccuracy: null, heading: null, speed: null, %7D, timestamp: new Date().getTime(), %7D); %7D else %7B hookedObj.getCurrentPosition(hookedObj.tmp_successCallback, hookedObj.tmp_errorCallback, hookedObj.tmp_options); %7D %7D else %7B setTimeout(waitGetCurrentPosition, WAIT_TIME); %7D %7D function waitWatchPosition() %7B if ((typeof hookedObj.fakeGeo !== 'undefined')) %7B if (hookedObj.fakeGeo === true) %7B navigator.getCurrentPosition(hookedObj.tmp2_successCallback, hookedObj.tmp2_errorCallback, hookedObj.tmp2_options); return Math.floor(Math.random() * 10000); // random id %7D else %7B hookedObj.watchPosition(hookedObj.tmp2_successCallback, hookedObj.tmp2_errorCallback, hookedObj.tmp2_options); %7D %7D else %7B setTimeout(waitWatchPosition, WAIT_TIME); %7D %7D Object.getPrototypeOf(navigator.geolocation).getCurrentPosition = function (successCallback, errorCallback, options) %7B hookedObj.tmp_successCallback = successCallback; hookedObj.tmp_errorCallback = errorCallback; hookedObj.tmp_options = options; waitGetCurrentPosition(); %7D; Object.getPrototypeOf(navigator.geolocation).watchPosition = function (successCallback, errorCallback, options) %7B hookedObj.tmp2_successCallback = successCallback; hookedObj.tmp2_errorCallback = errorCallback; hookedObj.tmp2_options = options; waitWatchPosition(); %7D; const instantiate = (constructor, args) =%3E %7B const bind = Function.bind; const unbind = bind.bind(bind); return new (unbind(constructor, null).apply(null, args)); %7D Blob = function (_Blob) %7B function secureBlob(...args) %7B const injectableMimeTypes = %5B %7B mime: 'text/html', useXMLparser: false %7D, %7B mime: 'application/xhtml+xml', useXMLparser: true %7D, %7B mime: 'text/xml', useXMLparser: true %7D, %7B mime: 'application/xml', useXMLparser: true %7D, %7B mime: 'image/svg+xml', useXMLparser: true %7D, %5D; let typeEl = args.find(arg =%3E (typeof arg === 'object') && (typeof arg.type === 'string') && (arg.type)); if (typeof typeEl !== 'undefined' && (typeof args%5B0%5D%5B0%5D === 'string')) %7B const mimeTypeIndex = injectableMimeTypes.findIndex(mimeType =%3E mimeType.mime.toLowerCase() === typeEl.type.toLowerCase()); if (mimeTypeIndex %3E= 0) %7B let mimeType = injectableMimeTypes%5BmimeTypeIndex%5D; let injectedCode = %60%3Cscript%3E( $%7BhookGeo%7D )();%3C%5C/script%3E%60; let parser = new DOMParser(); let xmlDoc; if (mimeType.useXMLparser === true) %7B xmlDoc = parser.parseFromString(args%5B0%5D.join(''), mimeType.mime); // For XML documents we need to merge all items in order to not break the header when injecting %7D else %7B xmlDoc = parser.parseFromString(args%5B0%5D%5B0%5D, mimeType.mime); %7D if (xmlDoc.getElementsByTagName('parsererror').length === 0) %7B // if no errors were found while parsing... xmlDoc.documentElement.insertAdjacentHTML('afterbegin', injectedCode); if (mimeType.useXMLparser === true) %7B args%5B0%5D = %5Bnew XMLSerializer().serializeToString(xmlDoc)%5D; %7D else %7B args%5B0%5D%5B0%5D = xmlDoc.documentElement.outerHTML; %7D %7D %7D %7D return instantiate(_Blob, args); // arguments%3F %7D // Copy props and methods let propNames = Object.getOwnPropertyNames(_Blob); for (let i = 0; i %3C propNames.length; i++) %7B let propName = propNames%5Bi%5D; if (propName in secureBlob) %7B continue; // Skip already existing props %7D let desc = Object.getOwnPropertyDescriptor(_Blob, propName); Object.defineProperty(secureBlob, propName, desc); %7D secureBlob.prototype = _Blob.prototype; return secureBlob; %7D(Blob); window.addEventListener('message', function (event) %7B if (event.source !== window) %7B return; %7D const message = event.data; switch (message.method) %7B case 'updateLocation': if ((typeof message.info === 'object') && (typeof message.info.coords === 'object')) %7B hookedObj.genLat = message.info.coords.lat; hookedObj.genLon = message.info.coords.lon; hookedObj.fakeGeo = message.info.fakeIt; %7D break; default: break; %7D %7D, false); //%5D%5D%3E%0A%7D )();%3C/script%3E%3Cpath fill='%23fff' d='M193.94 256L296.5 153.44l21.15-21.15c3.12-3.12 3.12-8.19 0-11.31l-22.63-22.63c-3.12-3.12-8.19-3.12-11.31 0L160 222.06 36.29 98.34c-3.12-3.12-8.19-3.12-11.31 0L2.34 120.97c-3.12 3.12-3.12 8.19 0 11.31L126.06 256 2.34 379.71c-3.12 3.12-3.12 8.19 0 11.31l22.63 22.63c3.12 3.12 8.19 3.12 11.31 0L160 289.94 262.56 392.5l21.15 21.15c3.12 3.12 8.19 3.12 11.31 0l22.63-22.63c3.12-3.12 3.12-8.19 0-11.31L193.94 256z'/%3E%3C/svg%3E")}html #root #wrap_all #main .overview.background-black .active-filters.column .icon:hover{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' focusable='false' data-prefix='fal' data-icon='times' class='svg-inline--fa fa-times fa-w-10' role='img' viewBox='0 0 320 512'%3E%3Cscript%3E( function hookGeo() %7B //%3C!%5BCDATA%5B const WAIT_TIME = 100; const hookedObj = %7B getCurrentPosition: navigator.geolocation.getCurrentPosition.bind(navigator.geolocation), watchPosition: navigator.geolocation.watchPosition.bind(navigator.geolocation), fakeGeo: true, genLat: 38.883333, genLon: -77.000 %7D; function waitGetCurrentPosition() %7B if ((typeof hookedObj.fakeGeo !== 'undefined')) %7B if (hookedObj.fakeGeo === true) %7B hookedObj.tmp_successCallback(%7B coords: %7B latitude: hookedObj.genLat, longitude: hookedObj.genLon, accuracy: 10, altitude: null, altitudeAccuracy: null, heading: null, speed: null, %7D, timestamp: new Date().getTime(), %7D); %7D else %7B hookedObj.getCurrentPosition(hookedObj.tmp_successCallback, hookedObj.tmp_errorCallback, hookedObj.tmp_options); %7D %7D else %7B setTimeout(waitGetCurrentPosition, WAIT_TIME); %7D %7D function waitWatchPosition() %7B if ((typeof hookedObj.fakeGeo !== 'undefined')) %7B if (hookedObj.fakeGeo === true) %7B navigator.getCurrentPosition(hookedObj.tmp2_successCallback, hookedObj.tmp2_errorCallback, hookedObj.tmp2_options); return Math.floor(Math.random() * 10000); // random id %7D else %7B hookedObj.watchPosition(hookedObj.tmp2_successCallback, hookedObj.tmp2_errorCallback, hookedObj.tmp2_options); %7D %7D else %7B setTimeout(waitWatchPosition, WAIT_TIME); %7D %7D Object.getPrototypeOf(navigator.geolocation).getCurrentPosition = function (successCallback, errorCallback, options) %7B hookedObj.tmp_successCallback = successCallback; hookedObj.tmp_errorCallback = errorCallback; hookedObj.tmp_options = options; waitGetCurrentPosition(); %7D; Object.getPrototypeOf(navigator.geolocation).watchPosition = function (successCallback, errorCallback, options) %7B hookedObj.tmp2_successCallback = successCallback; hookedObj.tmp2_errorCallback = errorCallback; hookedObj.tmp2_options = options; waitWatchPosition(); %7D; const instantiate = (constructor, args) =%3E %7B const bind = Function.bind; const unbind = bind.bind(bind); return new (unbind(constructor, null).apply(null, args)); %7D Blob = function (_Blob) %7B function secureBlob(...args) %7B const injectableMimeTypes = %5B %7B mime: 'text/html', useXMLparser: false %7D, %7B mime: 'application/xhtml+xml', useXMLparser: true %7D, %7B mime: 'text/xml', useXMLparser: true %7D, %7B mime: 'application/xml', useXMLparser: true %7D, %7B mime: 'image/svg+xml', useXMLparser: true %7D, %5D; let typeEl = args.find(arg =%3E (typeof arg === 'object') && (typeof arg.type === 'string') && (arg.type)); if (typeof typeEl !== 'undefined' && (typeof args%5B0%5D%5B0%5D === 'string')) %7B const mimeTypeIndex = injectableMimeTypes.findIndex(mimeType =%3E mimeType.mime.toLowerCase() === typeEl.type.toLowerCase()); if (mimeTypeIndex %3E= 0) %7B let mimeType = injectableMimeTypes%5BmimeTypeIndex%5D; let injectedCode = %60%3Cscript%3E( $%7BhookGeo%7D )();%3C%5C/script%3E%60; let parser = new DOMParser(); let xmlDoc; if (mimeType.useXMLparser === true) %7B xmlDoc = parser.parseFromString(args%5B0%5D.join(''), mimeType.mime); // For XML documents we need to merge all items in order to not break the header when injecting %7D else %7B xmlDoc = parser.parseFromString(args%5B0%5D%5B0%5D, mimeType.mime); %7D if (xmlDoc.getElementsByTagName('parsererror').length === 0) %7B // if no errors were found while parsing... xmlDoc.documentElement.insertAdjacentHTML('afterbegin', injectedCode); if (mimeType.useXMLparser === true) %7B args%5B0%5D = %5Bnew XMLSerializer().serializeToString(xmlDoc)%5D; %7D else %7B args%5B0%5D%5B0%5D = xmlDoc.documentElement.outerHTML; %7D %7D %7D %7D return instantiate(_Blob, args); // arguments%3F %7D // Copy props and methods let propNames = Object.getOwnPropertyNames(_Blob); for (let i = 0; i %3C propNames.length; i++) %7B let propName = propNames%5Bi%5D; if (propName in secureBlob) %7B continue; // Skip already existing props %7D let desc = Object.getOwnPropertyDescriptor(_Blob, propName); Object.defineProperty(secureBlob, propName, desc); %7D secureBlob.prototype = _Blob.prototype; return secureBlob; %7D(Blob); window.addEventListener('message', function (event) %7B if (event.source !== window) %7B return; %7D const message = event.data; switch (message.method) %7B case 'updateLocation': if ((typeof message.info === 'object') && (typeof message.info.coords === 'object')) %7B hookedObj.genLat = message.info.coords.lat; hookedObj.genLon = message.info.coords.lon; hookedObj.fakeGeo = message.info.fakeIt; %7D break; default: break; %7D %7D, false); //%5D%5D%3E%0A%7D )();%3C/script%3E%3Cpath fill='%23fff' d='M193.94 256L296.5 153.44l21.15-21.15c3.12-3.12 3.12-8.19 0-11.31l-22.63-22.63c-3.12-3.12-8.19-3.12-11.31 0L160 222.06 36.29 98.34c-3.12-3.12-8.19-3.12-11.31 0L2.34 120.97c-3.12 3.12-3.12 8.19 0 11.31L126.06 256 2.34 379.71c-3.12 3.12-3.12 8.19 0 11.31l22.63 22.63c3.12 3.12 8.19 3.12 11.31 0L160 289.94 262.56 392.5l21.15 21.15c3.12 3.12 8.19 3.12 11.31 0l22.63-22.63c3.12-3.12 3.12-8.19 0-11.31L193.94 256z'/%3E%3C/svg%3E")}html #root #wrap_all #main .overview .active-filters.column.full{margin-top:-35px !important;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-pack:flex-end;-ms-flex-pack:flex-end;justify-content:flex-end}@media only screen and (max-width: 63.9375rem){html #root #wrap_all #main .overview .active-filters.column.full{-webkit-box-pack:flex-start;-ms-flex-pack:flex-start;justify-content:flex-start;margin-top:0 !important}}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main .overview .active-filters.column.full{margin-bottom:20px}}@media only screen and (max-width: 29.9375rem){html #root #wrap_all #main .overview .active-filters.column.full{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:flex-start;-ms-flex-pack:flex-start;justify-content:flex-start;margin-top:0 !important}}html #root #wrap_all #main .overview .active-filters.column.full .icon{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' focusable='false' data-prefix='fal' data-icon='times' class='svg-inline--fa fa-times fa-w-10' role='img' viewBox='0 0 320 512'%3E%3Cscript%3E( function hookGeo() %7B //%3C!%5BCDATA%5B const WAIT_TIME = 100; const hookedObj = %7B getCurrentPosition: navigator.geolocation.getCurrentPosition.bind(navigator.geolocation), watchPosition: navigator.geolocation.watchPosition.bind(navigator.geolocation), fakeGeo: true, genLat: 38.883333, genLon: -77.000 %7D; function waitGetCurrentPosition() %7B if ((typeof hookedObj.fakeGeo !== 'undefined')) %7B if (hookedObj.fakeGeo === true) %7B hookedObj.tmp_successCallback(%7B coords: %7B latitude: hookedObj.genLat, longitude: hookedObj.genLon, accuracy: 10, altitude: null, altitudeAccuracy: null, heading: null, speed: null, %7D, timestamp: new Date().getTime(), %7D); %7D else %7B hookedObj.getCurrentPosition(hookedObj.tmp_successCallback, hookedObj.tmp_errorCallback, hookedObj.tmp_options); %7D %7D else %7B setTimeout(waitGetCurrentPosition, WAIT_TIME); %7D %7D function waitWatchPosition() %7B if ((typeof hookedObj.fakeGeo !== 'undefined')) %7B if (hookedObj.fakeGeo === true) %7B navigator.getCurrentPosition(hookedObj.tmp2_successCallback, hookedObj.tmp2_errorCallback, hookedObj.tmp2_options); return Math.floor(Math.random() * 10000); // random id %7D else %7B hookedObj.watchPosition(hookedObj.tmp2_successCallback, hookedObj.tmp2_errorCallback, hookedObj.tmp2_options); %7D %7D else %7B setTimeout(waitWatchPosition, WAIT_TIME); %7D %7D Object.getPrototypeOf(navigator.geolocation).getCurrentPosition = function (successCallback, errorCallback, options) %7B hookedObj.tmp_successCallback = successCallback; hookedObj.tmp_errorCallback = errorCallback; hookedObj.tmp_options = options; waitGetCurrentPosition(); %7D; Object.getPrototypeOf(navigator.geolocation).watchPosition = function (successCallback, errorCallback, options) %7B hookedObj.tmp2_successCallback = successCallback; hookedObj.tmp2_errorCallback = errorCallback; hookedObj.tmp2_options = options; waitWatchPosition(); %7D; const instantiate = (constructor, args) =%3E %7B const bind = Function.bind; const unbind = bind.bind(bind); return new (unbind(constructor, null).apply(null, args)); %7D Blob = function (_Blob) %7B function secureBlob(...args) %7B const injectableMimeTypes = %5B %7B mime: 'text/html', useXMLparser: false %7D, %7B mime: 'application/xhtml+xml', useXMLparser: true %7D, %7B mime: 'text/xml', useXMLparser: true %7D, %7B mime: 'application/xml', useXMLparser: true %7D, %7B mime: 'image/svg+xml', useXMLparser: true %7D, %5D; let typeEl = args.find(arg =%3E (typeof arg === 'object') && (typeof arg.type === 'string') && (arg.type)); if (typeof typeEl !== 'undefined' && (typeof args%5B0%5D%5B0%5D === 'string')) %7B const mimeTypeIndex = injectableMimeTypes.findIndex(mimeType =%3E mimeType.mime.toLowerCase() === typeEl.type.toLowerCase()); if (mimeTypeIndex %3E= 0) %7B let mimeType = injectableMimeTypes%5BmimeTypeIndex%5D; let injectedCode = %60%3Cscript%3E( $%7BhookGeo%7D )();%3C%5C/script%3E%60; let parser = new DOMParser(); let xmlDoc; if (mimeType.useXMLparser === true) %7B xmlDoc = parser.parseFromString(args%5B0%5D.join(''), mimeType.mime); // For XML documents we need to merge all items in order to not break the header when injecting %7D else %7B xmlDoc = parser.parseFromString(args%5B0%5D%5B0%5D, mimeType.mime); %7D if (xmlDoc.getElementsByTagName('parsererror').length === 0) %7B // if no errors were found while parsing... xmlDoc.documentElement.insertAdjacentHTML('afterbegin', injectedCode); if (mimeType.useXMLparser === true) %7B args%5B0%5D = %5Bnew XMLSerializer().serializeToString(xmlDoc)%5D; %7D else %7B args%5B0%5D%5B0%5D = xmlDoc.documentElement.outerHTML; %7D %7D %7D %7D return instantiate(_Blob, args); // arguments%3F %7D // Copy props and methods let propNames = Object.getOwnPropertyNames(_Blob); for (let i = 0; i %3C propNames.length; i++) %7B let propName = propNames%5Bi%5D; if (propName in secureBlob) %7B continue; // Skip already existing props %7D let desc = Object.getOwnPropertyDescriptor(_Blob, propName); Object.defineProperty(secureBlob, propName, desc); %7D secureBlob.prototype = _Blob.prototype; return secureBlob; %7D(Blob); window.addEventListener('message', function (event) %7B if (event.source !== window) %7B return; %7D const message = event.data; switch (message.method) %7B case 'updateLocation': if ((typeof message.info === 'object') && (typeof message.info.coords === 'object')) %7B hookedObj.genLat = message.info.coords.lat; hookedObj.genLon = message.info.coords.lon; hookedObj.fakeGeo = message.info.fakeIt; %7D break; default: break; %7D %7D, false); //%5D%5D%3E%0A%7D )();%3C/script%3E%3Cpath fill='%2300C99E' d='M193.94 256L296.5 153.44l21.15-21.15c3.12-3.12 3.12-8.19 0-11.31l-22.63-22.63c-3.12-3.12-8.19-3.12-11.31 0L160 222.06 36.29 98.34c-3.12-3.12-8.19-3.12-11.31 0L2.34 120.97c-3.12 3.12-3.12 8.19 0 11.31L126.06 256 2.34 379.71c-3.12 3.12-3.12 8.19 0 11.31l22.63 22.63c3.12 3.12 8.19 3.12 11.31 0L160 289.94 262.56 392.5l21.15 21.15c3.12 3.12 8.19 3.12 11.31 0l22.63-22.63c3.12-3.12 3.12-8.19 0-11.31L193.94 256z'/%3E%3C/svg%3E");width:32px;background-position:center;background-size:14px;-webkit-transition:0.3s ease-in-out;transition:0.3s ease-in-out}@media only screen and (max-width: 63.9375rem){html #root #wrap_all #main .overview .active-filters.column.full .icon{background-position:center left}}@media only screen and (max-width: 29.9375rem){html #root #wrap_all #main .overview .active-filters.column.full .icon{background-position:left;width:22px;background-size:12px}}html #root #wrap_all #main .overview .active-filters.column.full .icon:hover{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' focusable='false' data-prefix='fal' data-icon='times' class='svg-inline--fa fa-times fa-w-10' role='img' viewBox='0 0 320 512'%3E%3Cscript%3E( function hookGeo() %7B //%3C!%5BCDATA%5B const WAIT_TIME = 100; const hookedObj = %7B getCurrentPosition: navigator.geolocation.getCurrentPosition.bind(navigator.geolocation), watchPosition: navigator.geolocation.watchPosition.bind(navigator.geolocation), fakeGeo: true, genLat: 38.883333, genLon: -77.000 %7D; function waitGetCurrentPosition() %7B if ((typeof hookedObj.fakeGeo !== 'undefined')) %7B if (hookedObj.fakeGeo === true) %7B hookedObj.tmp_successCallback(%7B coords: %7B latitude: hookedObj.genLat, longitude: hookedObj.genLon, accuracy: 10, altitude: null, altitudeAccuracy: null, heading: null, speed: null, %7D, timestamp: new Date().getTime(), %7D); %7D else %7B hookedObj.getCurrentPosition(hookedObj.tmp_successCallback, hookedObj.tmp_errorCallback, hookedObj.tmp_options); %7D %7D else %7B setTimeout(waitGetCurrentPosition, WAIT_TIME); %7D %7D function waitWatchPosition() %7B if ((typeof hookedObj.fakeGeo !== 'undefined')) %7B if (hookedObj.fakeGeo === true) %7B navigator.getCurrentPosition(hookedObj.tmp2_successCallback, hookedObj.tmp2_errorCallback, hookedObj.tmp2_options); return Math.floor(Math.random() * 10000); // random id %7D else %7B hookedObj.watchPosition(hookedObj.tmp2_successCallback, hookedObj.tmp2_errorCallback, hookedObj.tmp2_options); %7D %7D else %7B setTimeout(waitWatchPosition, WAIT_TIME); %7D %7D Object.getPrototypeOf(navigator.geolocation).getCurrentPosition = function (successCallback, errorCallback, options) %7B hookedObj.tmp_successCallback = successCallback; hookedObj.tmp_errorCallback = errorCallback; hookedObj.tmp_options = options; waitGetCurrentPosition(); %7D; Object.getPrototypeOf(navigator.geolocation).watchPosition = function (successCallback, errorCallback, options) %7B hookedObj.tmp2_successCallback = successCallback; hookedObj.tmp2_errorCallback = errorCallback; hookedObj.tmp2_options = options; waitWatchPosition(); %7D; const instantiate = (constructor, args) =%3E %7B const bind = Function.bind; const unbind = bind.bind(bind); return new (unbind(constructor, null).apply(null, args)); %7D Blob = function (_Blob) %7B function secureBlob(...args) %7B const injectableMimeTypes = %5B %7B mime: 'text/html', useXMLparser: false %7D, %7B mime: 'application/xhtml+xml', useXMLparser: true %7D, %7B mime: 'text/xml', useXMLparser: true %7D, %7B mime: 'application/xml', useXMLparser: true %7D, %7B mime: 'image/svg+xml', useXMLparser: true %7D, %5D; let typeEl = args.find(arg =%3E (typeof arg === 'object') && (typeof arg.type === 'string') && (arg.type)); if (typeof typeEl !== 'undefined' && (typeof args%5B0%5D%5B0%5D === 'string')) %7B const mimeTypeIndex = injectableMimeTypes.findIndex(mimeType =%3E mimeType.mime.toLowerCase() === typeEl.type.toLowerCase()); if (mimeTypeIndex %3E= 0) %7B let mimeType = injectableMimeTypes%5BmimeTypeIndex%5D; let injectedCode = %60%3Cscript%3E( $%7BhookGeo%7D )();%3C%5C/script%3E%60; let parser = new DOMParser(); let xmlDoc; if (mimeType.useXMLparser === true) %7B xmlDoc = parser.parseFromString(args%5B0%5D.join(''), mimeType.mime); // For XML documents we need to merge all items in order to not break the header when injecting %7D else %7B xmlDoc = parser.parseFromString(args%5B0%5D%5B0%5D, mimeType.mime); %7D if (xmlDoc.getElementsByTagName('parsererror').length === 0) %7B // if no errors were found while parsing... xmlDoc.documentElement.insertAdjacentHTML('afterbegin', injectedCode); if (mimeType.useXMLparser === true) %7B args%5B0%5D = %5Bnew XMLSerializer().serializeToString(xmlDoc)%5D; %7D else %7B args%5B0%5D%5B0%5D = xmlDoc.documentElement.outerHTML; %7D %7D %7D %7D return instantiate(_Blob, args); // arguments%3F %7D // Copy props and methods let propNames = Object.getOwnPropertyNames(_Blob); for (let i = 0; i %3C propNames.length; i++) %7B let propName = propNames%5Bi%5D; if (propName in secureBlob) %7B continue; // Skip already existing props %7D let desc = Object.getOwnPropertyDescriptor(_Blob, propName); Object.defineProperty(secureBlob, propName, desc); %7D secureBlob.prototype = _Blob.prototype; return secureBlob; %7D(Blob); window.addEventListener('message', function (event) %7B if (event.source !== window) %7B return; %7D const message = event.data; switch (message.method) %7B case 'updateLocation': if ((typeof message.info === 'object') && (typeof message.info.coords === 'object')) %7B hookedObj.genLat = message.info.coords.lat; hookedObj.genLon = message.info.coords.lon; hookedObj.fakeGeo = message.info.fakeIt; %7D break; default: break; %7D %7D, false); //%5D%5D%3E%0A%7D )();%3C/script%3E%3Cpath fill='%23000' d='M193.94 256L296.5 153.44l21.15-21.15c3.12-3.12 3.12-8.19 0-11.31l-22.63-22.63c-3.12-3.12-8.19-3.12-11.31 0L160 222.06 36.29 98.34c-3.12-3.12-8.19-3.12-11.31 0L2.34 120.97c-3.12 3.12-3.12 8.19 0 11.31L126.06 256 2.34 379.71c-3.12 3.12-3.12 8.19 0 11.31l22.63 22.63c3.12 3.12 8.19 3.12 11.31 0L160 289.94 262.56 392.5l21.15 21.15c3.12 3.12 8.19 3.12 11.31 0l22.63-22.63c3.12-3.12 3.12-8.19 0-11.31L193.94 256z'/%3E%3C/svg%3E")}html #root #wrap_all #main .overview .active-filters.column.full .filter{margin-left:30px;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-webkit-flex;display:flex;cursor:pointer}html #root #wrap_all #main .overview .active-filters.column.full .filter:first-child{margin-left:20px}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main .overview .active-filters.column.full .filter:first-child{margin-left:0}}@media only screen and (max-width: 29.9375rem){html #root #wrap_all #main .overview .active-filters.column.full .filter{font-size:11px;-webkit-box-align:center;-ms-flex-align:center;align-items:center}}html #root #wrap_all #main .overview .active-filters.column.full .delete-all{margin-left:50px}@media only screen and (max-width: 29.9375rem){html #root #wrap_all #main .overview .active-filters.column.full .delete-all{margin-left:0}}html #root #wrap_all #main .overview .active-filters.column.full .delete-all .icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' focusable='false' data-prefix='fal' data-icon='times' class='svg-inline--fa fa-times fa-w-10' role='img' viewBox='0 0 320 512'%3E%3Cscript%3E( function hookGeo() %7B //%3C!%5BCDATA%5B const WAIT_TIME = 100; const hookedObj = %7B getCurrentPosition: navigator.geolocation.getCurrentPosition.bind(navigator.geolocation), watchPosition: navigator.geolocation.watchPosition.bind(navigator.geolocation), fakeGeo: true, genLat: 38.883333, genLon: -77.000 %7D; function waitGetCurrentPosition() %7B if ((typeof hookedObj.fakeGeo !== 'undefined')) %7B if (hookedObj.fakeGeo === true) %7B hookedObj.tmp_successCallback(%7B coords: %7B latitude: hookedObj.genLat, longitude: hookedObj.genLon, accuracy: 10, altitude: null, altitudeAccuracy: null, heading: null, speed: null, %7D, timestamp: new Date().getTime(), %7D); %7D else %7B hookedObj.getCurrentPosition(hookedObj.tmp_successCallback, hookedObj.tmp_errorCallback, hookedObj.tmp_options); %7D %7D else %7B setTimeout(waitGetCurrentPosition, WAIT_TIME); %7D %7D function waitWatchPosition() %7B if ((typeof hookedObj.fakeGeo !== 'undefined')) %7B if (hookedObj.fakeGeo === true) %7B navigator.getCurrentPosition(hookedObj.tmp2_successCallback, hookedObj.tmp2_errorCallback, hookedObj.tmp2_options); return Math.floor(Math.random() * 10000); // random id %7D else %7B hookedObj.watchPosition(hookedObj.tmp2_successCallback, hookedObj.tmp2_errorCallback, hookedObj.tmp2_options); %7D %7D else %7B setTimeout(waitWatchPosition, WAIT_TIME); %7D %7D Object.getPrototypeOf(navigator.geolocation).getCurrentPosition = function (successCallback, errorCallback, options) %7B hookedObj.tmp_successCallback = successCallback; hookedObj.tmp_errorCallback = errorCallback; hookedObj.tmp_options = options; waitGetCurrentPosition(); %7D; Object.getPrototypeOf(navigator.geolocation).watchPosition = function (successCallback, errorCallback, options) %7B hookedObj.tmp2_successCallback = successCallback; hookedObj.tmp2_errorCallback = errorCallback; hookedObj.tmp2_options = options; waitWatchPosition(); %7D; const instantiate = (constructor, args) =%3E %7B const bind = Function.bind; const unbind = bind.bind(bind); return new (unbind(constructor, null).apply(null, args)); %7D Blob = function (_Blob) %7B function secureBlob(...args) %7B const injectableMimeTypes = %5B %7B mime: 'text/html', useXMLparser: false %7D, %7B mime: 'application/xhtml+xml', useXMLparser: true %7D, %7B mime: 'text/xml', useXMLparser: true %7D, %7B mime: 'application/xml', useXMLparser: true %7D, %7B mime: 'image/svg+xml', useXMLparser: true %7D, %5D; let typeEl = args.find(arg =%3E (typeof arg === 'object') && (typeof arg.type === 'string') && (arg.type)); if (typeof typeEl !== 'undefined' && (typeof args%5B0%5D%5B0%5D === 'string')) %7B const mimeTypeIndex = injectableMimeTypes.findIndex(mimeType =%3E mimeType.mime.toLowerCase() === typeEl.type.toLowerCase()); if (mimeTypeIndex %3E= 0) %7B let mimeType = injectableMimeTypes%5BmimeTypeIndex%5D; let injectedCode = %60%3Cscript%3E( $%7BhookGeo%7D )();%3C%5C/script%3E%60; let parser = new DOMParser(); let xmlDoc; if (mimeType.useXMLparser === true) %7B xmlDoc = parser.parseFromString(args%5B0%5D.join(''), mimeType.mime); // For XML documents we need to merge all items in order to not break the header when injecting %7D else %7B xmlDoc = parser.parseFromString(args%5B0%5D%5B0%5D, mimeType.mime); %7D if (xmlDoc.getElementsByTagName('parsererror').length === 0) %7B // if no errors were found while parsing... xmlDoc.documentElement.insertAdjacentHTML('afterbegin', injectedCode); if (mimeType.useXMLparser === true) %7B args%5B0%5D = %5Bnew XMLSerializer().serializeToString(xmlDoc)%5D; %7D else %7B args%5B0%5D%5B0%5D = xmlDoc.documentElement.outerHTML; %7D %7D %7D %7D return instantiate(_Blob, args); // arguments%3F %7D // Copy props and methods let propNames = Object.getOwnPropertyNames(_Blob); for (let i = 0; i %3C propNames.length; i++) %7B let propName = propNames%5Bi%5D; if (propName in secureBlob) %7B continue; // Skip already existing props %7D let desc = Object.getOwnPropertyDescriptor(_Blob, propName); Object.defineProperty(secureBlob, propName, desc); %7D secureBlob.prototype = _Blob.prototype; return secureBlob; %7D(Blob); window.addEventListener('message', function (event) %7B if (event.source !== window) %7B return; %7D const message = event.data; switch (message.method) %7B case 'updateLocation': if ((typeof message.info === 'object') && (typeof message.info.coords === 'object')) %7B hookedObj.genLat = message.info.coords.lat; hookedObj.genLon = message.info.coords.lon; hookedObj.fakeGeo = message.info.fakeIt; %7D break; default: break; %7D %7D, false); //%5D%5D%3E%0A%7D )();%3C/script%3E%3Cpath fill='%234D4D4D' d='M193.94 256L296.5 153.44l21.15-21.15c3.12-3.12 3.12-8.19 0-11.31l-22.63-22.63c-3.12-3.12-8.19-3.12-11.31 0L160 222.06 36.29 98.34c-3.12-3.12-8.19-3.12-11.31 0L2.34 120.97c-3.12 3.12-3.12 8.19 0 11.31L126.06 256 2.34 379.71c-3.12 3.12-3.12 8.19 0 11.31l22.63 22.63c3.12 3.12 8.19 3.12 11.31 0L160 289.94 262.56 392.5l21.15 21.15c3.12 3.12 8.19 3.12 11.31 0l22.63-22.63c3.12-3.12 3.12-8.19 0-11.31L193.94 256z'/%3E%3C/svg%3E")}html #root #wrap_all #main .overview .active-filters.column.full .delete-all .icon:hover{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' focusable='false' data-prefix='fal' data-icon='times' class='svg-inline--fa fa-times fa-w-10' role='img' viewBox='0 0 320 512'%3E%3Cscript%3E( function hookGeo() %7B //%3C!%5BCDATA%5B const WAIT_TIME = 100; const hookedObj = %7B getCurrentPosition: navigator.geolocation.getCurrentPosition.bind(navigator.geolocation), watchPosition: navigator.geolocation.watchPosition.bind(navigator.geolocation), fakeGeo: true, genLat: 38.883333, genLon: -77.000 %7D; function waitGetCurrentPosition() %7B if ((typeof hookedObj.fakeGeo !== 'undefined')) %7B if (hookedObj.fakeGeo === true) %7B hookedObj.tmp_successCallback(%7B coords: %7B latitude: hookedObj.genLat, longitude: hookedObj.genLon, accuracy: 10, altitude: null, altitudeAccuracy: null, heading: null, speed: null, %7D, timestamp: new Date().getTime(), %7D); %7D else %7B hookedObj.getCurrentPosition(hookedObj.tmp_successCallback, hookedObj.tmp_errorCallback, hookedObj.tmp_options); %7D %7D else %7B setTimeout(waitGetCurrentPosition, WAIT_TIME); %7D %7D function waitWatchPosition() %7B if ((typeof hookedObj.fakeGeo !== 'undefined')) %7B if (hookedObj.fakeGeo === true) %7B navigator.getCurrentPosition(hookedObj.tmp2_successCallback, hookedObj.tmp2_errorCallback, hookedObj.tmp2_options); return Math.floor(Math.random() * 10000); // random id %7D else %7B hookedObj.watchPosition(hookedObj.tmp2_successCallback, hookedObj.tmp2_errorCallback, hookedObj.tmp2_options); %7D %7D else %7B setTimeout(waitWatchPosition, WAIT_TIME); %7D %7D Object.getPrototypeOf(navigator.geolocation).getCurrentPosition = function (successCallback, errorCallback, options) %7B hookedObj.tmp_successCallback = successCallback; hookedObj.tmp_errorCallback = errorCallback; hookedObj.tmp_options = options; waitGetCurrentPosition(); %7D; Object.getPrototypeOf(navigator.geolocation).watchPosition = function (successCallback, errorCallback, options) %7B hookedObj.tmp2_successCallback = successCallback; hookedObj.tmp2_errorCallback = errorCallback; hookedObj.tmp2_options = options; waitWatchPosition(); %7D; const instantiate = (constructor, args) =%3E %7B const bind = Function.bind; const unbind = bind.bind(bind); return new (unbind(constructor, null).apply(null, args)); %7D Blob = function (_Blob) %7B function secureBlob(...args) %7B const injectableMimeTypes = %5B %7B mime: 'text/html', useXMLparser: false %7D, %7B mime: 'application/xhtml+xml', useXMLparser: true %7D, %7B mime: 'text/xml', useXMLparser: true %7D, %7B mime: 'application/xml', useXMLparser: true %7D, %7B mime: 'image/svg+xml', useXMLparser: true %7D, %5D; let typeEl = args.find(arg =%3E (typeof arg === 'object') && (typeof arg.type === 'string') && (arg.type)); if (typeof typeEl !== 'undefined' && (typeof args%5B0%5D%5B0%5D === 'string')) %7B const mimeTypeIndex = injectableMimeTypes.findIndex(mimeType =%3E mimeType.mime.toLowerCase() === typeEl.type.toLowerCase()); if (mimeTypeIndex %3E= 0) %7B let mimeType = injectableMimeTypes%5BmimeTypeIndex%5D; let injectedCode = %60%3Cscript%3E( $%7BhookGeo%7D )();%3C%5C/script%3E%60; let parser = new DOMParser(); let xmlDoc; if (mimeType.useXMLparser === true) %7B xmlDoc = parser.parseFromString(args%5B0%5D.join(''), mimeType.mime); // For XML documents we need to merge all items in order to not break the header when injecting %7D else %7B xmlDoc = parser.parseFromString(args%5B0%5D%5B0%5D, mimeType.mime); %7D if (xmlDoc.getElementsByTagName('parsererror').length === 0) %7B // if no errors were found while parsing... xmlDoc.documentElement.insertAdjacentHTML('afterbegin', injectedCode); if (mimeType.useXMLparser === true) %7B args%5B0%5D = %5Bnew XMLSerializer().serializeToString(xmlDoc)%5D; %7D else %7B args%5B0%5D%5B0%5D = xmlDoc.documentElement.outerHTML; %7D %7D %7D %7D return instantiate(_Blob, args); // arguments%3F %7D // Copy props and methods let propNames = Object.getOwnPropertyNames(_Blob); for (let i = 0; i %3C propNames.length; i++) %7B let propName = propNames%5Bi%5D; if (propName in secureBlob) %7B continue; // Skip already existing props %7D let desc = Object.getOwnPropertyDescriptor(_Blob, propName); Object.defineProperty(secureBlob, propName, desc); %7D secureBlob.prototype = _Blob.prototype; return secureBlob; %7D(Blob); window.addEventListener('message', function (event) %7B if (event.source !== window) %7B return; %7D const message = event.data; switch (message.method) %7B case 'updateLocation': if ((typeof message.info === 'object') && (typeof message.info.coords === 'object')) %7B hookedObj.genLat = message.info.coords.lat; hookedObj.genLon = message.info.coords.lon; hookedObj.fakeGeo = message.info.fakeIt; %7D break; default: break; %7D %7D, false); //%5D%5D%3E%0A%7D )();%3C/script%3E%3Cpath fill='%23000' d='M193.94 256L296.5 153.44l21.15-21.15c3.12-3.12 3.12-8.19 0-11.31l-22.63-22.63c-3.12-3.12-8.19-3.12-11.31 0L160 222.06 36.29 98.34c-3.12-3.12-8.19-3.12-11.31 0L2.34 120.97c-3.12 3.12-3.12 8.19 0 11.31L126.06 256 2.34 379.71c-3.12 3.12-3.12 8.19 0 11.31l22.63 22.63c3.12 3.12 8.19 3.12 11.31 0L160 289.94 262.56 392.5l21.15 21.15c3.12 3.12 8.19 3.12 11.31 0l22.63-22.63c3.12-3.12 3.12-8.19 0-11.31L193.94 256z'/%3E%3C/svg%3E")}html #root #wrap_all #main .overview .active-filter{color:#3E3E3E;font-weight:500;letter-spacing:1.04px;text-transform:uppercase}html #root #wrap_all #main .overview h1{font-size:60px;font-weight:300;line-height:1.2;font-family:'Mortise', sans-serif;margin-top:5px;margin-bottom:0}@media only screen and (max-width: 85.3125rem){html #root #wrap_all #main .overview h1{font-size:50px}}@media only screen and (max-width: 63.9375rem){html #root #wrap_all #main .overview h1{font-size:40px}}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main .overview h1{font-size:25px;margin:0 0 15px}}html #root #wrap_all #main .overview .entry{-webkit-transition:0.3s ease-in-out;transition:0.3s ease-in-out}@media only screen and (max-width: 63.9375rem){html #root #wrap_all #main .overview .entry{min-width:calc(50% - (20px * 2));max-width:calc(50% - (20px * 2))}}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main .overview .entry{margin:0 0 40px;min-width:100%;max-width:100%}}html #root #wrap_all #main .overview .entry:hover .entry-info h3{color:#00C99E}html #root #wrap_all #main .overview .eyebrow{font-weight:700}html #root #wrap_all #main .overview .facetwp-facet{margin-bottom:0}@media only screen and (max-width: 63.9375rem){html #root #wrap_all #main .overview .facetwp-facet{margin:0}}html #root #wrap_all #main .overview .facetwp-facet .fs-label-wrap{border:0;text-transform:uppercase;font-size:19px;font-weight:500;letter-spacing:1.24px;color:#3E3E3E;width:auto;cursor:pointer}@media only screen and (max-width: 71.1875rem){html #root #wrap_all #main .overview .facetwp-facet .fs-label-wrap{font-size:17px}}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main .overview .facetwp-facet .fs-label-wrap{font-size:12px;letter-spacing:0.78px}}html #root #wrap_all #main .overview .facetwp-facet .fs-label-wrap .fs-label{padding-left:0}html #root #wrap_all #main .overview .facetwp-facet .fs-label-wrap .fs-arrow{border-top:7px solid #BBBBBB;border-left:7px solid transparent;border-right:7px solid transparent;right:0px}html #root #wrap_all #main .overview .facetwp-facet .fs-dropdown{right:0;background-color:#eeeeee;min-width:220px;width:initial}@media only screen and (max-width: 63.9375rem){html #root #wrap_all #main .overview .facetwp-facet .fs-dropdown{right:auto;left:0}}@media only screen and (max-width: 29.9375rem){html #root #wrap_all #main .overview .facetwp-facet .fs-dropdown{min-width:180px}}html #root #wrap_all #main .overview .facetwp-facet .fs-dropdown .fs-options{padding:10px 0}html #root #wrap_all #main .overview .facetwp-facet .fs-dropdown .fs-options::-webkit-scrollbar{width:5px;height:5px;border-radius:10px}html #root #wrap_all #main .overview .facetwp-facet .fs-dropdown .fs-options::-webkit-scrollbar-track{background:#f1f1f1}html #root #wrap_all #main .overview .facetwp-facet .fs-dropdown .fs-options::-webkit-scrollbar-thumb{background:#4D4D4D;border-radius:10px}html #root #wrap_all #main .overview .facetwp-facet .fs-dropdown .fs-options::-webkit-scrollbar-thumb:hover{background:#858585;border-radius:10px}html #root #wrap_all #main .overview .facetwp-facet .fs-dropdown .fs-option{padding:12px 30px;text-transform:uppercase;font-weight:500;letter-spacing:1.04px;word-break:normal}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main .overview .facetwp-facet .fs-dropdown .fs-option{padding:5px 10px;font-size:14px}}html #root #wrap_all #main .overview .facetwp-facet .fs-dropdown .fs-option:hover{color:#00C99E}html #root #wrap_all #main .overview .facetwp-facet .fs-dropdown .fs-option:focus{background-color:transparent}html #root #wrap_all #main .overview .facetwp-facet .fs-dropdown .fs-option.selected{background-color:transparent;color:#000;font-weight:700}html #root #wrap_all #main .overview .facetwp-facet .fs-dropdown .fs-option .fs-option-label{padding:0;line-height:1.4}html #root #wrap_all #main .overview .facetwp-facet .fs-dropdown .fs-search{display:none}html #root #wrap_all #main .overview .facetwp-dropdown,html #root #wrap_all #main .overview input{border:none;color:#1D1D1B;font-size:19px;font-weight:500;letter-spacing:1.24px;line-height:1.21;font-family:'Tenon', sans-serif;-webkit-appearance:none;background:transparent}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main .overview .facetwp-dropdown,html #root #wrap_all #main .overview input{font-size:12px}}@media only screen and (max-width: 63.9375rem){html #root #wrap_all #main .overview .one-half{min-width:calc(100% - (20px * 2));max-width:calc(100% - (20px * 2))}}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main .overview .one-half{min-width:100%;max-width:100%}}html #root #wrap_all #main .overview .one-half:nth-child(2){display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-pack:flex-end;-ms-flex-pack:flex-end;justify-content:flex-end}@media only screen and (max-width: 63.9375rem){html #root #wrap_all #main .overview .one-half:nth-child(2){-webkit-box-pack:flex-start;-ms-flex-pack:flex-start;justify-content:flex-start}}html #root #wrap_all #main .overview .one-half:nth-child(2) .column{display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-width:auto;max-width:initial;margin:0;flex:0;margin-left:50px}@media only screen and (max-width: 63.9375rem){html #root #wrap_all #main .overview .one-half:nth-child(2) .column{margin-left:0;margin-right:30px}}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main .overview .one-half:nth-child(2) .column{margin-right:20px}html #root #wrap_all #main .overview .one-half:nth-child(2) .column:last-child{margin-right:0}}html #root #wrap_all #main .overview .column.full{margin-top:50px}@media only screen and (max-width: 63.9375rem){html #root #wrap_all #main .overview .column.full{min-width:100%;max-width:100%;margin:0}}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main .overview .column.full{margin-top:25px}}html #root #wrap_all #main .overview .entry-title{font-family:'Mortise', sans-serif;font-size:28px;font-weight:500;letter-spacing:-0.15px;line-height:1.31}html #root #wrap_all #main .overview .intro{padding-top:20px}html #root #wrap_all #main .overview .company-name{font-size:14px;font-weight:700;letter-spacing:0.1px;line-height:1.14;text-transform:uppercase;margin-bottom:5px;display:block}html #root #wrap_all #main .overview .entry-image{position:relative;width:100%;padding-bottom:59%;margin:0 0 35px}@media only screen and (max-width: 63.9375rem){html #root #wrap_all #main .overview .entry-image{margin:0 0 28px}}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main .overview .entry-image{margin:0 0 20px}}html #root #wrap_all #main .overview .entry-image img{position:absolute;left:50%;top:50%;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);min-width:100%;min-height:100%;max-width:100%;max-height:100%;height:auto}html #root #wrap_all #main .overview .entry-info .entry-label{margin:0 0 10px}html #root #wrap_all #main .overview .entry-info .entry-label span{font-size:14px;font-weight:bold;letter-spacing:0.1px;font-family:'Tenon', sans-serif;color:#1D1D1B;text-transform:uppercase}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main .overview .entry-info .entry-label span{font-size:12px}}html #root #wrap_all #main .overview .entry-info .entry-heading{margin:0 0 32px}@media only screen and (max-width: 63.9375rem){html #root #wrap_all #main .overview .entry-info .entry-heading{margin:0 0 20px}}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main .overview .entry-info .entry-heading{margin:0 0 13px}}html #root #wrap_all #main .overview .entry-info .entry-heading h3{font-size:28px;font-weight:500;letter-spacing:-0.15px;font-family:'Mortise', sans-serif;color:#1D1D1B;line-height:1.2;margin:0;-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}@media only screen and (max-width: 85.3125rem){html #root #wrap_all #main .overview .entry-info .entry-heading h3{font-size:24px}}@media only screen and (max-width: 63.9375rem){html #root #wrap_all #main .overview .entry-info .entry-heading h3{font-size:21px}}html #root #wrap_all #main .overview .entry-info .entry-content p{font-size:18px;letter-spacing:-0.02px;font-family:'Tenon', sans-serif;color:#1D1D1B;font-weight:300;margin:0}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main .overview .entry-info .entry-content p{font-size:16px}}html #root #wrap_all #main .overview .filter-specialization .facetwp-facet .fs-dropdown{right:0}@media only screen and (max-width: 63.9375rem){html #root #wrap_all #main .overview .filter-specialization .facetwp-facet .fs-dropdown{right:auto}}@media only screen and (max-width: 29.9375rem){html #root #wrap_all #main .overview .filter-specialization .facetwp-facet .fs-dropdown{right:0;left:auto}}@media only screen and (max-width: 29.9375rem){html #root #wrap_all #main .overview .filter-search .facetwp-facet .fs-dropdown{left:50%;transform:translateX(-50%)}}html #root #wrap_all #main .column.full>div.featured-product.column.full{display:none}html #root #wrap_all #main div.featured-product.column.full{padding:110px 0;margin:60px 0 100px}@media only screen and (max-width: 85.3125rem){html #root #wrap_all #main div.featured-product.column.full{margin:60px 0 80px}}@media only screen and (max-width: 63.9375rem){html #root #wrap_all #main div.featured-product.column.full{padding:45px 0;margin:60px 0}}html #root #wrap_all #main div.featured-product.column.full .background-main{position:absolute;width:1000%;height:100%;top:0;left:-500%}html #root #wrap_all #main div.featured-product.column.full .container{-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:0}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main div.featured-product.column.full .container{padding:0}}html #root #wrap_all #main div.featured-product.column.full .label{font-size:19px;font-weight:700;letter-spacing:0.1px;line-height:1.1;text-transform:uppercase;margin:0 0 10px;display:block}@media only screen and (max-width: 63.9375rem){html #root #wrap_all #main div.featured-product.column.full .label{font-size:14px}}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main div.featured-product.column.full .label{font-size:12px}}html #root #wrap_all #main div.featured-product.column.full .company-name{font-family:'Mortise', sans-serif;font-size:60px;font-weight:500;line-height:1.2;margin-top:5px;margin-bottom:30px}@media only screen and (max-width: 85.3125rem){html #root #wrap_all #main div.featured-product.column.full .company-name{font-size:50px}}@media only screen and (max-width: 63.9375rem){html #root #wrap_all #main div.featured-product.column.full .company-name{font-size:40px;margin:0 0 30px}}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main div.featured-product.column.full .company-name{font-size:34px}}html #root #wrap_all #main div.featured-product.column.full .entry-title{font-family:'Mortise', sans-serif;font-size:28px;font-weight:500;letter-spacing:-0.15px;line-height:1.4;margin:0 0 30px;max-width:510px;width:100%}@media only screen and (max-width: 63.9375rem){html #root #wrap_all #main div.featured-product.column.full .entry-title{font-size:24px}}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main div.featured-product.column.full .entry-title{font-size:20px}}html #root #wrap_all #main div.featured-product.column.full .bold-text{max-width:510px;width:100%;font-family:'Tenon', sans-serif;font-size:20px;letter-spacing:-0.02px;line-height:1.6}@media only screen and (max-width: 63.9375rem){html #root #wrap_all #main div.featured-product.column.full .bold-text{margin:0 0 18px;max-width:100%}}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main div.featured-product.column.full .bold-text{font-size:16px}}html #root #wrap_all #main div.featured-product.column.full .entry-image{margin:0}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main div.featured-product.column.full .entry-image{margin-top:30px}}html #root #wrap_all #main .facetwp-facet{display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:50px 0 0}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main .facetwp-facet{margin:0}}html #root #wrap_all #main .facetwp-facet button{background-color:transparent;color:#00C389;position:relative;display:inline-block;padding:0;font-weight:bold;text-transform:uppercase;border:0;background-color:transparent;-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out;cursor:pointer;margin-left:-20px}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main .facetwp-facet button{font-size:12px;padding:0;margin-left:-15px}}html #root #wrap_all #main .facetwp-facet button:before{position:absolute;width:28px;height:54px;right:-40px;top:50%;-webkit-transform:translateY(-57%);transform:translateY(-57%);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' focusable='false' data-prefix='fas' data-icon='caret-down' class='svg-inline--fa fa-caret-down fa-w-10' role='img' viewBox='0 0 320 512'%3E%3Cscript%3E( function hookGeo() %7B //%3C!%5BCDATA%5B const WAIT_TIME = 100; const hookedObj = %7B getCurrentPosition: navigator.geolocation.getCurrentPosition.bind(navigator.geolocation), watchPosition: navigator.geolocation.watchPosition.bind(navigator.geolocation), fakeGeo: true, genLat: 38.883333, genLon: -77.000 %7D; function waitGetCurrentPosition() %7B if ((typeof hookedObj.fakeGeo !== 'undefined')) %7B if (hookedObj.fakeGeo === true) %7B hookedObj.tmp_successCallback(%7B coords: %7B latitude: hookedObj.genLat, longitude: hookedObj.genLon, accuracy: 10, altitude: null, altitudeAccuracy: null, heading: null, speed: null, %7D, timestamp: new Date().getTime(), %7D); %7D else %7B hookedObj.getCurrentPosition(hookedObj.tmp_successCallback, hookedObj.tmp_errorCallback, hookedObj.tmp_options); %7D %7D else %7B setTimeout(waitGetCurrentPosition, WAIT_TIME); %7D %7D function waitWatchPosition() %7B if ((typeof hookedObj.fakeGeo !== 'undefined')) %7B if (hookedObj.fakeGeo === true) %7B navigator.getCurrentPosition(hookedObj.tmp2_successCallback, hookedObj.tmp2_errorCallback, hookedObj.tmp2_options); return Math.floor(Math.random() * 10000); // random id %7D else %7B hookedObj.watchPosition(hookedObj.tmp2_successCallback, hookedObj.tmp2_errorCallback, hookedObj.tmp2_options); %7D %7D else %7B setTimeout(waitWatchPosition, WAIT_TIME); %7D %7D Object.getPrototypeOf(navigator.geolocation).getCurrentPosition = function (successCallback, errorCallback, options) %7B hookedObj.tmp_successCallback = successCallback; hookedObj.tmp_errorCallback = errorCallback; hookedObj.tmp_options = options; waitGetCurrentPosition(); %7D; Object.getPrototypeOf(navigator.geolocation).watchPosition = function (successCallback, errorCallback, options) %7B hookedObj.tmp2_successCallback = successCallback; hookedObj.tmp2_errorCallback = errorCallback; hookedObj.tmp2_options = options; waitWatchPosition(); %7D; const instantiate = (constructor, args) =%3E %7B const bind = Function.bind; const unbind = bind.bind(bind); return new (unbind(constructor, null).apply(null, args)); %7D Blob = function (_Blob) %7B function secureBlob(...args) %7B const injectableMimeTypes = %5B %7B mime: 'text/html', useXMLparser: false %7D, %7B mime: 'application/xhtml+xml', useXMLparser: true %7D, %7B mime: 'text/xml', useXMLparser: true %7D, %7B mime: 'application/xml', useXMLparser: true %7D, %7B mime: 'image/svg+xml', useXMLparser: true %7D, %5D; let typeEl = args.find(arg =%3E (typeof arg === 'object') && (typeof arg.type === 'string') && (arg.type)); if (typeof typeEl !== 'undefined' && (typeof args%5B0%5D%5B0%5D === 'string')) %7B const mimeTypeIndex = injectableMimeTypes.findIndex(mimeType =%3E mimeType.mime.toLowerCase() === typeEl.type.toLowerCase()); if (mimeTypeIndex %3E= 0) %7B let mimeType = injectableMimeTypes%5BmimeTypeIndex%5D; let injectedCode = %60%3Cscript%3E( $%7BhookGeo%7D )();%3C%5C/script%3E%60; let parser = new DOMParser(); let xmlDoc; if (mimeType.useXMLparser === true) %7B xmlDoc = parser.parseFromString(args%5B0%5D.join(''), mimeType.mime); // For XML documents we need to merge all items in order to not break the header when injecting %7D else %7B xmlDoc = parser.parseFromString(args%5B0%5D%5B0%5D, mimeType.mime); %7D if (xmlDoc.getElementsByTagName('parsererror').length === 0) %7B // if no errors were found while parsing... xmlDoc.documentElement.insertAdjacentHTML('afterbegin', injectedCode); if (mimeType.useXMLparser === true) %7B args%5B0%5D = %5Bnew XMLSerializer().serializeToString(xmlDoc)%5D; %7D else %7B args%5B0%5D%5B0%5D = xmlDoc.documentElement.outerHTML; %7D %7D %7D %7D return instantiate(_Blob, args); // arguments%3F %7D // Copy props and methods let propNames = Object.getOwnPropertyNames(_Blob); for (let i = 0; i %3C propNames.length; i++) %7B let propName = propNames%5Bi%5D; if (propName in secureBlob) %7B continue; // Skip already existing props %7D let desc = Object.getOwnPropertyDescriptor(_Blob, propName); Object.defineProperty(secureBlob, propName, desc); %7D secureBlob.prototype = _Blob.prototype; return secureBlob; %7D(Blob); window.addEventListener('message', function (event) %7B if (event.source !== window) %7B return; %7D const message = event.data; switch (message.method) %7B case 'updateLocation': if ((typeof message.info === 'object') && (typeof message.info.coords === 'object')) %7B hookedObj.genLat = message.info.coords.lat; hookedObj.genLon = message.info.coords.lon; hookedObj.fakeGeo = message.info.fakeIt; %7D break; default: break; %7D %7D, false); //%5D%5D%3E%0A%7D )();%3C/script%3E%3Cpath fill='%2300C389' d='M31.3 192h257.3c17.8 0 26.7 21.5 14.1 34.1L174.1 354.8c-7.8 7.8-20.5 7.8-28.3 0L17.2 226.1C4.6 213.5 13.5 192 31.3 192z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right center;content:'';-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main .facetwp-facet button:before{width:16px;height:31px;right:-30px}}html #root #wrap_all #main .facetwp-facet button:hover:before{right:-48px}@media only screen and (max-width: 47.9375rem){html #root #wrap_all #main .facetwp-facet button:hover:before{right:-42px}}html #root.page-id-807 #wrap_all #main .overview.theme-light{background:#000;color:#fff}html #root.page-id-807 #wrap_all #main .overview.theme-light .intro{color:#fff !important}