1<!DOCTYPE html> 2<html lang="en-US" prefix="og: https://ogp.me/ns#"> 3<head> 4 <meta charset="UTF-8"> 5
5<script>!function(){"use strict";var t=new URL(window.location.href),e=Array.from(t.searchParams.entries()).map(t=>`${t[0]}=${t[1]}`);const a=t=>t.replace(/\s/g,""),r=async t=>{const e={sha256Hash:"",sha1Hash:""};if(!("msCrypto"in window)&&"https:"===location.protocol&&"crypto"in window&&"TextEncoder"in window){const a=(new TextEncoder).encode(t),[r,o]=await Promise.all([n("SHA-256",a),n("SHA-1",a)]);e.sha256Hash=r,e.sha1Hash=o}return e},n=async(t,e)=>{const a=await crypto.subtle.digest(t,e);return Array.from(new Uint8Array(a)).map(t=>("00"+t.toString(16)).slice(-2)).join("")};function o(t){let e=!0;return Object.keys(t).forEach(a=>{0===t[a].length&&(e=!1)}),e}function s(){e.splice(i,1);var a="?"+e.join("&")+t.hash;history.replaceState(null,"",a)}for(var i=0;i<e.length;i++){var c="adt_ei",l=decodeURIComponent(e[i]);if(0===l.indexOf(c)){var h=l.split(c+"=")[1];if((t=>{const e=t.match(/((?=([a-zA-Z0-9._!#$%+^&*()[\]<>-]+))\2@[a-zA-Z0-9._-]+\.[a-zA-Z0-9._-]+)/gi);return e?e[0]:""})(a(h.toLowerCase()))){r(h).then(t=>{if(o(t)){var e={value:t,created:Date.now()};localStorage.setItem(c,JSON.stringify(e)),localStorage.setItem("adt_emsrc","url")}s()});break}s();break}}}(); 6</script>
6<style data-no-optimize="1" data-cfasync="false"> 7 .adthrive-ad { 8 margin-top: 10px; 9 margin-bottom: 10px; 10 text-align: center; 11 overflow-x: visible; 12 clear: both; 13 line-height: 0; 14 } 15 body.archive .adthrive-content{ 16width:100%; 17} 18 19.adthrive-device-desktop .adthrive-top-left-outer { 20 left: 250px; 21} 22 23.adthrive-sidebar {width: 300px !important;} 24 25/* White Background For Mobile Sticky Video Player */ 26.adthrive-collapse-mobile-background { 27background-color: #fff!important; 28} 29.adthrive-top-collapse-close > svg > * { 30stroke: black; 31font-family: sans-serif; 32} 33.adthrive-top-collapse-wrapper-video-title, 34.adthrive-top-collapse-wrapper-bar a a.adthrive-learn-more-link { 35color: black!important; 36} 37/* END White Background For Mobile Sticky Video Player */</style>
38<script data-no-optimize="1" data-cfasync="false"> 39 window.adthriveCLS = { 40 enabledLocations: ['Content', 'Recipe'], 41 injectedSlots: [], 42 injectedFromPlugin: true, 43 branch: '8e1d4c3',bucket: 'prod', }; 44 window.adthriveCLS.siteAds = {"betaTester":false,"targeting":[{"value":"61f2d3d330a62b308a594afb","key":"siteId"},{"value":"6233884d56b7fb7088afc8e7","key":"organizationId"},{"value":"CNCSourced","key":"siteName"},{"value":"AdThrive Edge","key":"service"},{"value":"on","key":"bidding"},{"value":["Tech"],"key":"verticals"}],"siteUrl":"https://cncsourced.com/","siteId":"61f2d3d330a62b308a594afb","siteName":"CNCSourced","breakpoints":{"tablet":768,"desktop":1024},"cloudflare":null,"adUnits":[{"sequence":1,"targeting":[{"value":["Sidebar"],"key":"location"}],"devices":["desktop"],"name":"Sidebar_1","sticky":false,"location":"Sidebar","dynamic":{"pageSelector":"","spacing":0,"max":1,"lazyMax":null,"enable":true,"lazy":false,"elementSelector":".gb-grid-column-5824acde > .gb-container:not(.template-c--left-sidebar) > .gb-inside-container > div","skip":0,"classNames":[],"position":"beforebegin","every":1,"enabled":true},"stickyOverlapSelector":"","adSizes":[[300,250],[250,250],[300,600],[120,240],[160,600],[300,1050],[336,280],[320,50],[320,100],[1,1],[300,420],[300,50]],"priority":299,"autosize":true},{"sequence":9,"targeting":[{"value":["Sidebar"],"key":"location"},{"value":true,"key":"sticky"}],"devices":["desktop"],"name":"Sidebar_9","sticky":true,"location":"Sidebar","dynamic":{"pageSelector":"","spacing":0,"max":1,"lazyMax":null,"enable":true,"lazy":false,"elementSelector":".gb-grid-column-5824acde > .gb-container:not(.template-c--left-sidebar) > div:last-of-type","skip":0,"classNames":[],"position":"beforeend","every":1,"enabled":true},"stickyOverlapSelector":".site-footer","adSizes":[[300,250],[250,250],[300,600],[120,240],[160,600],[300,1050],[336,280],[320,50],[320,100],[1,1],[300,420],[300,50]],"priority":291,"autosize":true},{"sequence":1,"targeting":[{"value":["Sidebar"],"key":"location"}],"devices":["desktop"],"name":"Sidebar_1","sticky":false,"location":"Sidebar","dynamic":{"pageSelector":"","spacing":0,"max":1,"lazyMax":null,"enable":true,"lazy":false,"elementSelector":".gb-grid-column-5824acde > .gb-container.template-c--left-sidebar > .gb-inside-container > div","skip":0,"classNames":[],"position":"afterend","every":1,"enabled":true},"stickyOverlapSelector":"","adSizes":[[300,250],[250,250],[300,600],[120,240],[160,600],[300,1050],[336,280],[320,50],[320,100],[1,1],[300,420],[300,50]],"priority":299,"autosize":true},{"sequence":null,"targeting":[{"value":["Content"],"key":"location"}],"devices":["desktop","tablet","phone"],"name":"Content","sticky":false,"location":"Content","dynamic":{"pageSelector":"body.home","spacing":0,"max":2,"lazyMax":null,"enable":true,"lazy":false,"elementSelector":".entry-content > div","skip":1,"classNames":[],"position":"afterend","every":1,"enabled":true},"stickyOverlapSelector":"","adSizes":[[728,90],[336,280],[320,50],[468,60],[970,90],[250,250],[1,1],[320,100],[970,250],[1,2],[300,50],[300,300],[552,334],[728,250],[300,250]],"priority":199,"autosize":true},{"sequence":null,"targeting":[{"value":["Content"],"key":"location"}],"devices":["desktop"],"name":"Content","sticky":false,"location":"Content","dynamic":{"pageSelector":"body.single","spacing":0.85,"max":3,"lazyMax":27,"enable":true,"lazy":true,"elementSelector":".dynamic-entry-content > *:not(h2):not(h3):not(.wp-block-image):not(.adthrive) + *:not(.wp-block-image):not(ol):not(ul):not(.adthrive), .dynamic-entry-content .rank-math-list-item + *","skip":7,"classNames":[],"position":"beforebegin","every":1,"enabled":true},"stickyOverlapSelector":"","adSizes":[[1,1],[1,2],[250,250],[300,50],[300,250],[300,300],[320,50],[320,100],[336,280],[468,60],[552,334],[728,90],[728,250],[970,90],[970,250]],"priority":199,"autosize":true},{"sequence":null,"targeting":[{"value":["Content"],"key":"location"}],"devices":["tablet","phone"],"name":"Content","sticky":false,"location":"Content","dynamic":{"pageSelector":"body.single","spacing":0.85,"max":3,"lazyMax":27,"enable":true,"lazy":true,"elementSelector":".dynamic-entry-content > *:not(h2):not(h3):not(.wp-block-image):not(.adthrive) + *:not(.wp-block-image):not(ol):not(ul):not(.adthrive), .dynamic-entry-content .rank-math-list-item + *","skip":7,"classNames":[],"position":"beforebegin","every":1,"enabled":true},"stickyOverlapSelector":"","adSizes":[[1,1],[1,2],[250,250],[300,50],[300,250],[300,300],[320,50],[320,100],[336,280],[468,60],[552,334],[728,90],[728,250],[970,90],[970,250]],"priority":199,"autosize":true},{"sequence":null,"targeting":[{"value":["Below Post"],"key":"location"}],"devices":["desktop","tablet","phone"],"name":"Below_Post","sticky":false,"location":"Below Post","dynamic":{"pageSelector":"","spacing":0,"max":0,"lazyMax":1,"enable":true,"lazy":true,"elementSelector":".post-author-box","skip":0,"classNames":[],"position":"afterend","every":1,"enabled":true},"stickyOverlapSelector":"","adSizes":[[120,240],[250,250],[300,250],[320,50],[320,100],[336,280],[468,60],[728,90],[1,1]],"priority":99,"autosize":true},{"sequence":null,"targeting":[{"value":["Footer"],"key":"location"},{"value":true,"key":"sticky"}],"devices":["desktop","tablet","phone"],"name":"Footer","sticky":true,"location":"Footer","dynamic":{"pageSelector":"","spacing":0,"max":1,"lazyMax":null,"enable":true,"lazy":false,"elementSelector":"body","
44skip":0,"classNames":[],"position":"beforeend","every":1,"enabled":true},"stickyOverlapSelector":"","adSizes":[[320,50],[320,100],[728,90],[970,90],[468,60],[1,1],[300,50]],"priority":-1,"autosize":true}],"adDensityLayout":{"mobile":{"adDensity":0.2,"onePerViewport":false},"pageOverrides":[],"desktop":{"adDensity":0.2,"onePerViewport":false}},"adDensityEnabled":true,"siteExperiments":[],"adTypes":{"sponsorTileDesktop":true,"interscrollerDesktop":true,"nativeBelowPostDesktop":true,"miniscroller":true,"largeFormatsMobile":true,"nativeMobileContent":true,"inRecipeRecommendationMobile":true,"nativeMobileRecipe":true,"sponsorTileMobile":true,"expandableCatalogAdsMobile":false,"frameAdsMobile":true,"outstreamMobile":true,"nativeHeaderMobile":true,"frameAdsDesktop":true,"inRecipeRecommendationDesktop":true,"expandableFooterDesktop":true,"nativeDesktopContent":true,"outstreamDesktop":true,"animatedFooter":true,"expandableFooter":true,"nativeDesktopSidebar":true,"videoFootersMobile":true,"videoFootersDesktop":true,"interscroller":false,"nativeDesktopRecipe":true,"nativeHeaderDesktop":true,"nativeBelowPostMobile":true,"expandableCatalogAdsDesktop":false,"largeFormatsDesktop":true},"adOptions":{"theTradeDesk":true,"thirdPartyCmp":{"enabled":false,"vendor":null,"injectPrivacyPreferencesLink":false},"undertone":true,"sidebarConfig":{"dynamicStickySidebar":{"minHeight":1800,"enabled":true,"blockedSelectors":[]}},"footerCloseButton":true,"teads":true,"seedtag":true,"pmp":true,"sharethrough":true,"optimizeVideoPlayersForEarnings":true,"removeVideoTitleWrapper":true,"pubMatic":true,"contentTermsFooterEnabled":true,"chicory":false,"infiniteScroll":false,"longerVideoAdPod":true,"yahoossp":true,"spa":false,"stickyContainerConfig":{"recipeDesktop":{"minHeight":null,"enabled":false},"blockedSelectors":[],"stickyHeaderSelectors":[],"content":{"minHeight":null,"enabled":false},"recipeMobile":{"minHeight":null,"enabled":false}},"gatedPrint":{"siteEmailServiceProviderId":null,"defaultOptIn":false,"closeButtonEnabled":false,"enabled":false,"newsletterPromptEnabled":false},"equativ":true,"yieldmo":true,"californiaPrivacyPopup":{"privacyPolicyUrl":null,"enabled":false,"termsOfServiceUrl":null},"footerSelector":"","amazonUAM":true,"gamMCMEnabled":true,"gamMCMChildNetworkCode":"22549118177","rubicon":true,"restartStickyVideoPlayersAfterClose":true,"conversant":true,"openx":true,"customCreativeEnabled":true,"mobileHeaderHeight":1,"secColor":"#000000","unruly":true,"bRealTime":true,"adInViewTime":null,"gumgum":true,"comscoreFooter"
44:true,"desktopInterstitial":false,"contentAdXExpansionDesktop":true,"amx":true,"footerCloseButtonDesktop":false,"ozone":true,"isAutoOptimized":false,"trustx":true,"comscoreTAL":true,"bgColor":"#FFFFFF","advancePlaylistOptions":{"playlistPlayer":{"enabled":true},"relatedPlayer":{"enabled":true,"applyToFirst":true}},"kargo":true,"liveRampATS":true,"footerCloseButtonMobile":false,"interstitialBlockedPageSelectors":"","prioritizeShorterVideoAds":true,"allowSmallerAdSizes":true,"comscore":"Tech","blis":true,"wakeLock":{"desktopEnabled":true,"mobileValue":15,"mobileEnabled":true,"desktopValue":30},"mobileInterstitial":false,"tripleLift":true,"sensitiveCategories":["alc","ast","cbd","conl","cosm","dat","drg","gamc","gamv","pol","rel","sst","ssr","srh","ske","tob","wtl"],"liveRamp":true,"adthriveEmailIdentity":true,"criteo":true,"nativo":true,"infiniteScrollOptions":{"selector":"","heightThreshold":0},"siteAttributes":{"mobileHeaderSelectors":[],"desktopHeaderSelectors":[]},"dynamicContentSlotLazyLoading":true,"clsOptimizedAds":true,"ogury":true,"verticals":["Tech"],"inImage":false,"stackadapt":true,"usCMP":{"enabled":false,"regions":[]},"contentAdXExpansionMobile":true,"advancePlaylist":true,"medianet":true,"acAlwaysSticky":false,"delayLoading":true,"inImageZone":null,"appNexus":true,"rise":true,"liveRampId":"","infiniteScrollRefresh":false,"indexExchange":true},"siteAdsProfiles":[],"thirdPartySiteConfig":{"partners":{"discounts":[]}},"organizationData":{"organizationId":"6233884d56b7fb7088afc8e7","multiSiteOrg":true},"videoPlayers":{"contextual":{"autoplayCollapsibleEnabled":false,"overrideEmbedLocation":false,"defaultPlayerType":"static"},"videoEmbed":"wordpress","footerSelector":"","contentSpecificPlaylists":[],"players":[{"playlistId":"QVSZok9I","pageSelector":"body.single","devices":["mobile"],"mobileLocation":"top-center","description":"","skip":6,"title":"","type":"stickyPlaylist","enabled":true,"elementSelector":".dynamic-entry-content > *:not(h2):not(h3):not(.wp-block-image) + *:not(.wp-block-image):not(ol):not(ul)","id":4077564,"position":"beforebegin","saveVideoCloseState":false,"shuffle":false,"mobileHeaderSelector":null,"playerId":"IoNkH77K"},{"playlistId":"","pageSelector":"","devices":["mobile","desktop"],"mobileLocation":null,"description":"","skip":0,"title":"","type":"stationaryRelated","enabled":true,"elementSelector":"","id":4077475,"position":"","saveVideoCloseState":false,"shuffle":false,"playerId":"47S31rOx","isCompleted":true},{"playlistId":"QVSZok9I","pageSelector":"body.single","devices":["desktop"],"description":"","skip":6,"title":"","type":"stickyPlaylist","enabled":true,"elementSelector":".dynamic-entry-content > *:not(h2):not(h3):not(.wp-block-image) + *:not(.wp-block-image):not(ol):not(ul)","id":4077478,"position":"beforebegin","saveVideoCloseState":false,"shuffle":false,"mobileHeaderSelector":null,"playerId":"IoNkH77K","isCompleted":false}],"partners":{"theTradeDesk":true,"unruly":true,"undertone":true,"gumgum":true,"seedtag":true,"amx":true,"ozone":true,"trustx":true,"pmp":true,"kargo":true,"stickyOutstream":{"desktop":{"enabled":true},"blockedPageSelectors":"","mobileLocation":"bottom-left","thirdPartyGamAdUnitName":null,"allowOnHomepage":true,"mobile":{"enabled":true},"saveVideoCloseState":false,"mobileHeaderSelector":null,"allowForPageWithStickyPlayer":{"enabled":true}},"sharethrough":true,"blis":true,"tripleLift":true,"pubMatic":true,"criteo":true,"yahoossp":true,"nativo":true,"stackadapt":true,"equativ":true,"yieldmo":true,"amazonUAM":true,"medianet":true,"rubicon":true,"appNexus":true,"conversant":true,"rise":true,"openx":true,"indexExchange":true}}};</script>
44 45
46<script data-no-optimize="1" data-cfasync="false"> 47(function(w, d) { 48 w.adthrive = w.adthrive || {}; 49 w.adthrive.cmd = w.adthrive.cmd || []; 50 w.adthrive.plugin = 'adthrive-ads-3.5.6'; 51 w.adthrive.host = 'ads.adthrive.com'; 52 w.adthrive.integration = 'plugin'; 53 54 var commitParam = (w.adthriveCLS && w.adthriveCLS.bucket !== 'prod' && w.adthriveCLS.branch) ? '&commit=' + w.adthriveCLS.branch : ''; 55 56 var s = d.createElement('script'); 57 s.async = true; 58 s.referrerpolicy='no-referrer-when-downgrade'; 59 s.src = 'https://' + w.adthrive.host + '/sites/61f2d3d330a62b308a594afb/ads.min.js?referrer=' + w.encodeURIComponent(w.location.href) + commitParam + '&cb=' + (Math.floor(Math.random() * 100) + 1) + ''; 60 var n = d.getElementsByTagName('script')[0]; 61 n.parentNode.insertBefore(s, n); 62})(window, document); 63</script>
63 64<link rel="dns-prefetch" href="https://ads.adthrive.com/"><link rel="preconnect" href="https://ads.adthrive.com/"><link rel="preconnect" href="https://ads.adthrive.com/" crossorigin><meta name="viewport" content="width=device-width, initial-scale=1">
64<script>window._wca = window._wca || [];</script>
64 65<!-- Built by Kyle Van Deusen ð® --> 66<!-- Search Engine Optimization by Rank Math PRO - https://rankmath.com/ --> 67<title>How We Do Product Reviews - CNCSourced</title> 68<meta name="description" content="At CNCSourced, we take pride in our hands-on testing of the latest CNC routers and laser engravers that we review and recommend."/> 69<meta name="robots" content="follow, index, max-snippet:-1, max-video-preview:-1, max-image-preview:large"/> 70<link rel="canonical" href="https://www.cncsourced.com/how-we-do-product-reviews/" /> 71<meta property="og:locale" content="en_US" /> 72<meta property="og:type" content="article" /> 73<meta property="og:title" content="How We Do Product Reviews - CNCSourced" /> 74<meta property="og:description" content="At CNCSourced, we take pride in our hands-on testing of the latest CNC routers and laser engravers that we review and recommend." /> 75<meta property="og:url" content="https://www.cncsourced.com/how-we-do-product-reviews/" /> 76<meta property="og:site_name" content="CNCSourced" /> 77<meta property="article:author" content="https://www.facebook.com/cncsourced" /> 78<meta property="og:updated_time" content="2023-12-04T16:36:37+00:00" /> 79<meta property="og:image" content="https://www.cncsourced.com/wp-content/uploads/2023/04/CNCSourced-How-we-test-products-page-CNC-routers-and-laser-reviews-1024x576.jpeg" /> 80<meta property="og:image:secure_url" content="https://www.cncsourced.com/wp-content/uploads/2023/04/CNCSourced-How-we-test-products-page-CNC-routers-and-laser-reviews-1024x576.jpeg" /> 81<meta property="og:image:alt" content="How We Do Product Reviews" /> 82<meta property="article:published_time" content="2023-04-08T14:02:52+00:00" /> 83<meta property="article:modified_time" content="2023-12-04T16:36:37+00:00" /> 84<meta name="twitter:card" content="summary_large_image" /> 85<meta name="twitter:title" content="How We Do Product Reviews - CNCSourced" /> 86<meta name="twitter:description" content="At CNCSourced, we take pride in our hands-on testing of the latest CNC routers and laser engravers that we review and recommend." /> 87<meta name="twitter:creator" content="@cncsourced" /> 88<meta name="twitter:image" content="https://www.cncsourced.com/wp-content/uploads/2023/04/CNCSourced-How-we-test-products-page-CNC-routers-and-laser-reviews-1024x576.jpeg" /> 89<meta name="twitter:label1" content="Time to read" /> 90<meta name="twitter:data1" content="3 minutes" />
91<script type="application/ld+json" class="rank-math-schema-pro">{"@context":"https://schema.org","@graph":[{"@type":"Place","@id":"https://www.cncsourced.com/#place","address":{"@type":"PostalAddress","streetAddress":"8 High Street","addressLocality":"Brentwood","addressRegion":"Essex","postalCode":"CM14 4AB","addressCountry":"United Kingdom"}},{"@type":"Organization","@id":"https://www.cncsourced.com/#organization","name":"CNCSourced","url":"https://www.cncsourced.com","email":"[email protected]","address":{"@type":"PostalAddress","streetAddress":"8 High Street","addressLocality":"Brentwood","addressRegion":"Essex","postalCode":"CM14 4AB","addressCountry":"United Kingdom"},"logo":{"@type":"ImageObject","@id":"https://www.cncsourced.com/#logo","url":"https://www.cncsourced.com/wp-content/uploads/2021/12/cropped-Logo-05.png","contentUrl":"https://www.cncsourced.com/wp-content/uploads/2021/12/cropped-Logo-05.png","caption":"CNCSourced","inLanguage":"en-US","width":"2109","height":"506"},"location":{"@id":"https://www.cncsourced.com/#place"}},{"@type":"WebSite","@id":"https://www.cncsourced.com/#website","url":"https://www.cncsourced.com","name":"CNCSourced","publisher":{"@id":"https://www.cncsourced.com/#organization"},"inLanguage":"en-US"},{"@type":"ImageObject","@id":"https://www.cncsourced.com/wp-content/uploads/2023/04/CNCSourced-How-we-test-products-page-CNC-routers-and-laser-reviews-1024x576.jpeg","url":"https://www.cncsourced.com/wp-content/uploads/2023/04/CNCSourced-How-we-test-products-page-CNC-routers-and-laser-reviews-1024x576.jpeg","width":"200","height":"200","inLanguage":"en-US"},{"@type":"BreadcrumbList","@id":"https://www.cncsourced.com/how-we-do-product-reviews/#breadcrumb","itemListElement":[{"@type":"ListItem","position":"1","item":{"@id":"https://www.cncsourced.com","name":"Home"}},{"@type":"ListItem","position":"2","item":{"@id":"https://www.cncsourced.com/how-we-do-product-reviews/","name":"How We Do Product Reviews"}}]},{"@type":"WebPage","@id":"https://www.cncsourced.com/how-we-do-product-reviews/#webpage","url":"https://www.cncsourced.com/how-we-do-product-reviews/","name":"How We Do Product Reviews - CNCSourced","datePublished":"2023-04-08T14:02:52+00:00","dateModified":"2023-12-04T16:36:37+00:00","isPartOf":{"@id":"https://www.cncsourced.com/#website"},"primaryImageOfPage":{"@id":"https://www.cncsourced.com/wp-content/uploads/2023/04/CNCSourced-How-we-test-products-page-CNC-routers-and-laser-reviews-1024x576.jpeg"},"inLanguage":"en-US","breadcrumb":{"@id":"https://www.cncsourced.com/how-we-do-product-reviews/#breadcrumb"}},{"@type":"Person","@id":"https://www.cncsourced.com/author/cncsourced/","name":"CNCSourced","url":"https://www.cncsourced.com/author/cncsourced/","image":{"@type":"ImageObject","@id":"https://secure.gravatar.com/avatar/16e6ef082308d111c5c5251cf9dc2c457cbdeb28af72a75f4a3918bb2cdf42b4?s=96&d=mm&r=g","url":"https://secure.gravatar.com/avatar/16e6ef082308d111c5c5251cf9dc2c457cbdeb28af72a75f4a3918bb2cdf42b4?s=96&d=mm&r=g","caption":"CNCSourced","inLanguage":"en-US"},"sameAs":["https://www.cncsourced.com/","https://www.facebook.com/cncsourced","https://twitter.com/https://twitter.com/cncsourced","https://www.cncsourced.com/author/cncsourced/","https://www.youtube.com/@cncsourced","https://www.crunchbase.com/organization/cncsourced","https://www.pinterest.co.uk/cncsourced","https://rocketreach.co/cncsourced-profile_b713189bc4b66544","https://muckrack.com/media-outlet/cncsourced"],"worksFor":{"@id":"https://www.cncsourced.com/#organization"}},{"@type":"Article","headline":"How We Do Product Reviews - CNCSourced","datePublished":"2023-04-08T14:02:52+00:00","dateModified":"2023-12-04T16:36:37+00:00","author":{"@id":"https://www.cncsourced.com/author/cncsourced/","name":"CNCSourced"},"publisher":{"@id":"https://www.cncsourced.com/#organization"},"description":"At CNCSourced, we take pride in our hands-on testing of the latest CNC routers and laser engravers that we review and recommend.","name":"How We Do Product Reviews - CNCSourced","@id":"https://www.cncsourced.com/how-we-do-product-reviews/#richSnippet","isPartOf":{"@id":"https://www.cncsourced.com/how-we-do-product-reviews/#webpage"},"image":{"@id":"https://www.cncsourced.com/wp-content/uploads/2023/04/CNCSourced-How-we-test-products-page-CNC-routers-and-laser-reviews-1024x576.jpeg"},"inLanguage":"en-US","mainEntityOfPage":{"@id":"https://www.cncsourced.com/how-we-do-product-reviews/#webpage"}}]}</script>
91 92<!-- /Rank Math WordPress SEO plugin --> 93 94 95<!-- Novashare v.1.4.6 https://novashare.io/ --> 96<meta property="og:locale" content="en_US" /> 97<meta property="og:type" content="article" /> 98<meta property="og:title" content="How We Do Product Reviews" /> 99<meta property="og:description" content="" /> 100<meta property="og:url" content="https://www.cncsourced.com/how-we-do-product-reviews/" /> 101<meta property="og:site_name" content="CNCSourced" /> 102<meta property="og:updated_time" content="2023-12-04T16:36:37+00:00" /> 103<meta property="article:published_time" content="2023-04-08T14:02:52+00:00" /> 104<meta property="article:modified_time" content="2023-12-04T16:36:37+00:00" /> 105<meta name="twitter:card" content="summary_large_image" /> 106<meta name="twitter:title" content="How We Do Product Reviews" /> 107<meta name="twitter:description" content="" /> 108<!-- / Novashare --> 109<link rel='dns-prefetch' href='//a.omappapi.com' /> 110<link rel='dns-prefetch' href='//www.googletagmanager.com' /> 111<link href='https://fonts.gstatic.com' crossorigin rel='preconnect' /> 112<link href='https://fonts.googleapis.com' crossorigin rel='preconnect' /> 113<link rel='preconnect' href='//c0.wp.com' /> 114<link rel="alternate" type="application/rss+xml" title="CNCSourced » Feed" href="https://www.cncsourced.com/feed/" /> 115<link rel="alternate" type="application/rss+xml" title="CNCSourced » Comments Feed" href="https://www.cncsourced.com/comments/feed/" /> 116<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://www.cncsourced.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.cncsourced.com%2Fhow-we-do-product-reviews%2F" /> 117<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://www.cncsourced.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.cncsourced.com%2Fhow-we-do-product-reviews%2F&format=xml" /> 118<!-- www.cncsourced.com is managing ads with Advanced Ads 2.0.26 â https://wpadvancedads.com/ -->
118<script id="cncso-ready"> 119 window.advanced_ads_ready=function(e,a){a=a||"complete";var d=function(e){return"interactive"===a?"loading"!==e:"complete"===e};d(document.readyState)?e():document.addEventListener("readystatechange",(function(a){d(a.target.readyState)&&e()}),{once:"interactive"===a})},window.advanced_ads_ready_queue=window.advanced_ads_ready_queue||[]; </script>
119 120 <style id="wp-img-auto-sizes-contain-inline-css"> 121img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px} 122/*# sourceURL=wp-img-auto-sizes-contain-inline-css */ 123</style> 124<style id="wp-emoji-styles-inline-css"> 125 126 img.wp-smiley, img.emoji { 127 display: inline !important; 128 border: none !important; 129 box-shadow: none !important; 130 height: 1em !important; 131 width: 1em !important; 132 margin: 0 0.07em !important; 133 vertical-align: -0.1em !important; 134 background: none !important; 135 padding: 0 !important; 136 } 137/*# sourceURL=wp-emoji-styles-inline-css */ 138</style> 139<style id="wp-block-library-inline-css"> 140:root{--wp-block-synced-color:#7a00df;--wp-block-synced-color--rgb:122,0,223;--wp-bound-block-color:var(--wp-block-synced-color);--wp-editor-canvas-background:#ddd;--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,160.5;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.wp-element-button{cursor:pointer}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}:root{--wp--preset--font-size--normal:16px;
140--wp--preset--font-size--huge:42px}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}:root .has-text-align-center{text-align:center}:root .has-text-align-left{text-align:left}:root .has-text-align-right{text-align:right}.has-fit-text{white-space:nowrap!important}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{word-wrap:normal!important;border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.screen-reader-text:focus{background-color:#ddd;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(.has-border-color){border-style:solid}html :where([style*=border-color]){border-style:solid}html :where([style*=border-top-color]){border-top-style:solid}html :where([style*=border-right-color]){border-right-style:solid}html :where([style*=border-bottom-color]){border-bottom-style:solid}html :where([style*=border-left-color]){border-left-style:solid}html :where([style*=border-width]){border-style:solid}html :where([style*=border-top-width]){border-top-style:solid}html :where([style*=border-right-width]){border-right-style:solid}html :where([style*=border-bottom-width]){border-bottom-style:solid}html :where([style*=border-left-width]){border-left-style:solid}html :where(img[class*=wp-image-]){height:auto;max-width:100%}:where(figure){margin:0 0 1em}html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0px)}@media screen and (max-width:600px){html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0px}} 141 142/*# sourceURL=/wp-includes/css/dist/block-library/common.min.css */ 143</style> 144<style id="wp-block-heading-inline-css"> 145h1:where(.wp-block-heading).has-background,h2:where(.wp-block-heading).has-background,h3:where(.wp-block-heading).has-background,h4:where(.wp-block-heading).has-background,h5:where(.wp-block-heading).has-background,h6:where(.wp-block-heading).has-background{padding:1.25em 2.375em}h1.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h1.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h2.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h2.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h3.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h3.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h4.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h4.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h5.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h5.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h6.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h6.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]){rotate:180deg} 146/*# sourceURL=https://c0.wp.com/c/7.0.6/wp-includes/blocks/heading/style.min.css */ 147</style> 148<style id="wp-block-image-inline-css"> 149.wp-block-image>a,.wp-block-image>figure>a{display:inline-block}.wp-block-image img{box-sizing:border-box;height:auto;max-width:100%;vertical-align:bottom}@media not (prefers-reduced-motion){.wp-block-image img.hide{visibility:hidden}.wp-block-image img.show{animation:show-content-image .4s}}.wp-block-image[style*=border-radius] img,.wp-block-image[style*=border-radius]>a{border-radius:inherit}.wp-block-image.has-custom-border img{box-sizing:border-box}.wp-block-image.aligncenter{text-align:center}.wp-block-image.alignfull>a,.wp-block-image.alignwide>a{width:100%}.wp-block-image.alignfull img,.wp-block-image.alignwide img{height:auto;width:100%}.wp-block-image .aligncenter,.wp-block-image .alignleft,.wp-block-image .alignright,.wp-block-image.aligncenter,.wp-block-image.alignleft,.wp-block-image.alignright{display:table}.wp-block-image .aligncenter>figcaption,.wp-block-image .alignleft>figcaption,.wp-block-image .alignright>figcaption,.wp-block-image.aligncenter>figcaption,.wp-block-image.alignleft>figcaption,.wp-block-image.alignright>figcaption{caption-side:bottom;display:table-caption}.wp-block-image .alignleft{float:left;margin:.5em 1em .5em 0}.wp-block-image .alignright{float:right;margin:.5em 0 .5em 1em}.wp-block-image .aligncenter{margin-left:auto;margin-right:auto}.wp-block-image :where(figcaption){margin-bottom:1em;margin-top:.5em}.wp-block-image.is-style-circle-mask img{border-radius:9999px}@supports ((-webkit-mask-image:none) or (mask-image:none)) or (-webkit-mask-image:none){.wp-block-image.is-style-circle-mask img{border-radius:0;-webkit-mask-image:url('data:image/svg+xml;utf8,<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><circle cx="50" cy="50" r="50"/></svg>');mask-image:url('data:image/svg+xml;utf8,<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><circle cx="50" cy="50" r="50"/></svg>');mask-mode:alpha;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}}:root :where(.wp-block-image.is-style-rounded img,.wp-block-image .is-style-rounded img){border-radius:9999px}.wp-block-image figure{margin:0}.wp-lightbox-container{display:flex;flex-direction:column;position:relative}.wp-lightbox-container img{cursor:zoom-in}.wp-lightbox-container img:hover+button{opacity:1}.wp-lightbox-container button{align-items:center;backdrop-filter:blur(16px) saturate(180%);background-color:#5a5a5a40;border:none;border-radius:4px;cursor:zoom-in;display:flex;height:20px;justify-content:center;opacity:0;padding:0;position:absolute;right:16px;text-align:center;top:16px;width:20px;z-index:100}@media not (prefers-reduced-motion){.wp-lightbox-container button{transition:opacity .2s ease}}.wp-lightbox-container button:focus-visible{outline:3px auto #5a5a5a40;outline:3px auto -webkit-focus-ring-color;outline-offset:3px}.wp-lightbox-container button:hover{cursor:pointer;opacity:1}.wp-lightbox-container button:focus{opacity:1}.wp-lightbox-container button:focus,.wp-lightbox-container button:hover,.wp-lightbox-container button:not(:hover):not(:active):not(.has-background){background-color:#5a5a5a40;border:none}.wp-lightbox-overlay{box-sizing:border-box;
149cursor:zoom-out;height:100vh;left:0;overflow:hidden;position:fixed;top:0;visibility:hidden;width:100%;z-index:100000}.wp-lightbox-overlay .wp-lightbox-close-button{align-items:center;cursor:pointer;display:flex;font-family:inherit;gap:8px;justify-content:center;line-height:1;min-height:40px;min-width:40px;padding:0 4px;position:absolute;right:calc(env(safe-area-inset-right) + 16px);top:calc(env(safe-area-inset-top) + 16px);z-index:5000000}.wp-lightbox-overlay .wp-lightbox-close-button:focus,.wp-lightbox-overlay .wp-lightbox-close-button:hover,.wp-lightbox-overlay .wp-lightbox-close-button:not(:hover):not(:active):not(.has-background){background:none;border:none}.wp-lightbox-overlay .wp-lightbox-close-button:has(.wp-lightbox-close-text:not([hidden])) .wp-lightbox-close-icon svg{height:1em;width:1em}.wp-lightbox-overlay .wp-lightbox-close-icon svg{display:block}.wp-lightbox-overlay .wp-lightbox-navigation-button-next,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev{align-items:center;bottom:16px;cursor:pointer;display:flex;font-family:inherit;gap:4px;justify-content:center;line-height:1;min-height:40px;min-width:40px;padding:0 8px;position:absolute;z-index:2000002}.wp-lightbox-overlay .wp-lightbox-navigation-button-next[hidden],.wp-lightbox-overlay .wp-lightbox-navigation-button-prev[hidden]{display:none}@media (min-width:960px){.wp-lightbox-overlay .wp-lightbox-navigation-button-next,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev{bottom:50%;transform:translateY(-50%)}}.wp-lightbox-overlay .wp-lightbox-navigation-button-next:focus,.wp-lightbox-overlay .wp-lightbox-navigation-button-next:hover,.wp-lightbox-overlay .wp-lightbox-navigation-button-next:not(:hover):not(:active):not(.has-background),.wp-lightbox-overlay .wp-lightbox-navigation-button-prev:focus,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev:hover,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev:not(:hover):not(:active):not(.has-background){background:none;border:none;padding:0 8px}.wp-lightbox-overlay .wp-lightbox-navigation-button-next:has(.wp-lightbox-navigation-text:not([hidden])) .wp-lightbox-navigation-icon svg,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev:has(.wp-lightbox-navigation-text:not([hidden])) .wp-lightbox-navigation-icon svg{display:block;height:1.5em;width:1.5em}.wp-lightbox-overlay .wp-lightbox-navigation-button-prev{left:calc(env(safe-area-inset-left) + 16px)}.wp-lightbox-overlay .wp-lightbox-navigation-button-next{right:calc(env(safe-area-inset-right) + 16px)}.wp-lightbox-overlay .wp-lightbox-navigation-icon svg{vertical-align:middle}.wp-lightbox-overlay .lightbox-image-container{height:var(--wp--lightbox-container-height);left:50%;overflow:hidden;position:absolute;top:50%;transform:translate(-50%,-50%);transform-origin:top left;width:var(--wp--lightbox-container-width);z-index:2000001}.wp-lightbox-overlay .wp-block-image{align-items:center;box-sizing:border-box;display:flex;height:100%;justify-content:center;margin:0;position:relative;transform-origin:0 0;width:100%;z-index:3000000}.wp-lightbox-overlay .wp-block-image img{height:var(--wp--lightbox-image-height);min-height:var(--wp--lightbox-image-height);min-width:var(--wp--lightbox-image-width);width:var(--wp--lightbox-image-width)}.wp-lightbox-overlay .wp-block-image figcaption{display:none}.wp-lightbox-overlay button{background:none;border:none}.wp-lightbox-overlay .scrim{background-color:#fff;height:100%;opacity:.9;position:absolute;width:100%;z-index:2000000}.wp-lightbox-overlay.active{visibility:visible}@media not (prefers-reduced-motion){.wp-lightbox-overlay.active{animation:turn-on-visibility .25s both}.wp-lightbox-overlay.active img{animation:turn-on-visibility .35s both}.wp-lightbox-overlay.show-closing-animation:not(.active){animation:turn-off-visibility .35s both}.wp-lightbox-overlay.show-closing-animation:not(.active) img{animation:turn-off-visibility .25s both}.wp-lightbox-overlay.zoom.active{animation:none;opacity:1;visibility:visible}.wp-lightbox-overlay.zoom.active .lightbox-image-container{animation:lightbox-zoom-in .4s}.wp-lightbox-overlay.zoom.active .lightbox-image-container img{animation:none}.wp-lightbox-overlay.zoom.active .scrim{animation:turn-on-visibility .4s forwards}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active){animation:none}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active) .lightbox-image-container{animation:lightbox-zoom-out .4s}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active) .lightbox-image-container img{animation:none}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active) .scrim{animation:turn-off-visibility .4s forwards}}
149@keyframes show-content-image{0%{visibility:hidden}99%{visibility:hidden}to{visibility:visible}}@keyframes turn-on-visibility{0%{opacity:0}to{opacity:1}}@keyframes turn-off-visibility{0%{opacity:1;visibility:visible}99%{opacity:0;visibility:visible}to{opacity:0;visibility:hidden}}@keyframes lightbox-zoom-in{0%{transform:translate(calc((-100vw + var(--wp--lightbox-scrollbar-width))/2 + var(--wp--lightbox-initial-left-position)),calc(-50vh + var(--wp--lightbox-initial-top-position))) scale(var(--wp--lightbox-scale))}to{transform:translate(-50%,-50%) scale(1)}}@keyframes lightbox-zoom-out{0%{transform:translate(-50%,-50%) scale(1);visibility:visible}99%{visibility:visible}to{transform:translate(calc((-100vw + var(--wp--lightbox-scrollbar-width))/2 + var(--wp--lightbox-initial-left-position)),calc(-50vh + var(--wp--lightbox-initial-top-position))) scale(var(--wp--lightbox-scale));visibility:hidden}} 150/*# sourceURL=https://c0.wp.com/c/7.0.6/wp-includes/blocks/image/style.min.css */ 151</style> 152<style id="wp-block-list-inline-css"> 153ol,ul{box-sizing:border-box}:root :where(.wp-block-list.has-background){padding:1.25em 2.375em} 154/*# sourceURL=https://c0.wp.com/c/7.0.6/wp-includes/blocks/list/style.min.css */ 155</style> 156<style id="wp-block-paragraph-inline-css"> 157.is-small-text{font-size:.875em}.is-regular-text{font-size:1em}.is-large-text{font-size:2.25em}.is-larger-text{font-size:3em}.has-drop-cap:not(:focus):first-letter{float:left;font-size:8.4em;font-style:normal;font-weight:100;line-height:.68;margin:.05em .1em 0 0;text-transform:uppercase}body.rtl .has-drop-cap:not(:focus):first-letter{float:none;margin-left:.1em}p.has-drop-cap.has-background{overflow:hidden}:root :where(p.has-background){padding:1.25em 2.375em}:where(p.has-text-color:not(.has-link-color)) a{color:inherit}p.has-text-align-left[style*="writing-mode:vertical-lr"],p.has-text-align-right[style*="writing-mode:vertical-rl"]{rotate:180deg} 158/*# sourceURL=https://c0.wp.com/c/7.0.6/wp-includes/blocks/paragraph/style.min.css */ 159</style> 160<style id="wp-block-site-logo-inline-css"> 161.wp-block-site-logo{box-sizing:border-box;line-height:0}.wp-block-site-logo a{display:inline-block;line-height:0}.wp-block-site-logo.is-default-size img{height:auto;width:120px}.wp-block-site-logo img{height:auto;max-width:100%}.wp-block-site-logo a,.wp-block-site-logo img{border-radius:inherit}.wp-block-site-logo.aligncenter{margin-left:auto;margin-right:auto;text-align:center}:root :where(.wp-block-site-logo.is-style-rounded){border-radius:9999px} 162/*# sourceURL=https://c0.wp.com/c/7.0.6/wp-includes/blocks/site-logo/style.min.css */ 163</style> 164<style id="wp-block-separator-inline-css"> 165@charset "UTF-8";.wp-block-separator{border:none;border-top:2px solid}:root :where(.wp-block-separator.is-style-dots){height:auto;line-height:1;text-align:center}:root :where(.wp-block-separator.is-style-dots):before{color:currentColor;content:"···";font-family:serif;font-size:1.5em;letter-spacing:2em;padding-left:2em}.wp-block-separator.is-style-dots{background:none!important;border:none!important} 166/*# sourceURL=https://c0.wp.com/c/7.0.6/wp-includes/blocks/separator/style.min.css */ 167</style> 168<style id="wp-block-social-links-inline-css"> 169.wp-block-social-links{background:none;box-sizing:border-box;margin-left:0;padding-left:0;padding-right:0;text-indent:0}.wp-block-social-links .wp-social-link a,.wp-block-social-links .wp-social-link a:hover{border-bottom:0;box-shadow:none;text-decoration:none}.wp-block-social-links .wp-social-link svg{height:1em;width:1em}.wp-block-social-links .wp-social-link span:not(.screen-reader-text){font-size:.65em;margin-left:.5em;margin-right:.5em}.wp-block-social-links.has-small-icon-size{font-size:16px}.wp-block-social-links,.wp-block-social-links.has-normal-icon-size{font-size:24px}.wp-block-social-links.has-large-icon-size{font-size:36px}.wp-block-social-links.has-huge-icon-size{font-size:48px}.wp-block-social-links.aligncenter{display:flex;justify-content:center}.wp-block-social-links.alignright{justify-content:flex-end}.wp-block-social-link{border-radius:9999px;display:block}@media not (prefers-reduced-motion){.wp-block-social-link{transition:transform .1s ease}}.wp-block-social-link{height:auto}.wp-block-social-link a{align-items:center;display:flex;line-height:0}.wp-block-social-link:hover{transform:scale(1.1)}.wp-block-social-links .wp-block-social-link.wp-social-link{display:inline-block;margin:0;padding:0}.wp-block-social-links .wp-block-social-link.wp-social-link .wp-block-social-link-anchor,.wp-block-social-links .wp-block-social-link.wp-social-link .wp-block-social-link-anchor svg,.wp-block-social-links .wp-block-social-link.wp-social-link .wp-block-social-link-anchor:active,.wp-block-social-links .wp-block-social-link.wp-social-link .wp-block-social-link-anchor:hover,.wp-block-social-links .wp-block-social-link.wp-social-link .wp-block-social-link-anchor:visited{fill:currentColor;color:currentColor}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link{background-color:#f0f0f0;color:#444}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-amazon{background-color:#f90;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-bandcamp{background-color:#1ea0c3;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-behance{background-color:#0757fe;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-bluesky{background-color:#0a7aff;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-codepen{background-color:#1e1f26;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-deviantart{background-color:#02e49b;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-discord{background-color:#5865f2;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-dribbble{background-color:#e94c89;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-dropbox{background-color:#4280ff;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-etsy{background-color:#f45800;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-facebook{background-color:#0866ff;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-fivehundredpx{background-color:#000;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-flickr{background-color:#0461dd;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-foursquare{background-color:#e65678;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-github{background-color:#24292d;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-goodreads{background-color:#eceadd;color:#382110}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-google{background-color:#ea4434;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-gravatar{background-color:#1d4fc4;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-instagram{background-color:#f00075;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-lastfm{background-color:#e21b24;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-linkedin{background-color:#0d66c2;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-mastodon{background-color:#3288d4;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-medium{background-color:#000;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-meetup{background-color:#f6405f;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-patreon{background-color:#000;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-pinterest{background-color:#e60122;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-pocket{background-color:#ef4155;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-reddit{background-color:#ff4500;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-skype{background-color:#0478d7;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-snapchat{stroke:#000;background-color:#fefc00;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-soundcloud{background-color:#ff5600;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-spotify{background-color:#1bd760;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-telegram{background-color:#2aabee;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-threads{background-color:#000;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-tiktok{background-color:#000;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-tumblr{background-color:#011835;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-twitch{background-color:#6440a4;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-twitter{background-color:#1da1f2;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-vimeo{background-color:#1eb7ea;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-vk{background-color:#4680c2;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-wordpress{background-color:#3499cd;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-whatsapp{background-color:#25d366;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-x{background-color:#000;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-yelp{background-color:#d32422;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-youtube{background-color:red;color:#fff}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link{background:none}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link svg{height:1.25em;width:1.25em}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-amazon{color:#f90}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-bandcamp{color:#1ea0c3}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-behance{color:#0757fe}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-bluesky{color:#0a7aff}
169:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-codepen{color:#1e1f26}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-deviantart{color:#02e49b}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-discord{color:#5865f2}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-dribbble{color:#e94c89}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-dropbox{color:#4280ff}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-etsy{color:#f45800}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-facebook{color:#0866ff}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-fivehundredpx{color:#000}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-flickr{color:#0461dd}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-foursquare{color:#e65678}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-github{color:#24292d}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-goodreads{color:#382110}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-google{color:#ea4434}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-gravatar{color:#1d4fc4}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-instagram{color:#f00075}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-lastfm{color:#e21b24}
169:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-linkedin{color:#0d66c2}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-mastodon{color:#3288d4}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-medium{color:#000}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-meetup{color:#f6405f}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-patreon{color:#000}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-pinterest{color:#e60122}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-pocket{color:#ef4155}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-reddit{color:#ff4500}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-skype{color:#0478d7}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-snapchat{stroke:#000;color:#fff}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-soundcloud{color:#ff5600}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-spotify{color:#1bd760}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-telegram{color:#2aabee}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-threads{color:#000}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-tiktok{color:#000}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-tumblr{color:#011835}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-twitch{color:#6440a4}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-twitter{color:#1da1f2}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-vimeo{color:#1eb7ea}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-vk{color:#4680c2}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-whatsapp{color:#25d366}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-wordpress{color:#3499cd}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-x{color:#000}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-yelp{color:#d32422}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-youtube{color:red}.wp-block-social-links.is-style-pill-shape .wp-social-link{width:auto}:root :where(.wp-block-social-links .wp-social-link a){padding:.25em}:root :where(.wp-block-social-links.is-style-logos-only .wp-social-link a){padding:0}:root :where(.wp-block-social-links.is-style-pill-shape .wp-social-link a){padding-left:.6666666667em;padding-right:.6666666667em}.wp-block-social-links:not(.has-icon-color):not(.has-icon-background-color) .wp-social-link-snapchat .wp-block-social-link-label{color:#000} 170/*# sourceURL=https://c0.wp.com/c/7.0.6/wp-includes/blocks/social-links/style.min.css */ 171</style> 172 173<style id="classic-theme-styles-inline-css"> 174/*! This file is auto-generated */ 175.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} 176/*# sourceURL=/wp-includes/css/classic-themes.min.css */ 177</style> 178 179<style id="global-styles-inline-css"> 180:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--body: var(--body);--wp--preset--color--text: var(--text);--wp--preset--color--text-alt: var(--text-alt);--wp--preset--color--link: var(--link);--wp--preset--color--link-hover: var(--link-hover);--wp--preset--color--nav: var(--nav);--wp--preset--color--nav-hover: var(--nav-hover);--wp--preset--color--nav-current: var(--nav-current);--wp--preset--color--button-primary-bg: var(--button-primary-bg);--wp--preset--color--button-primary-bg-hover: var(--button-primary-bg-hover);--wp--preset--color--button-primary-text: var(--button-primary-text);--wp--preset--color--button-primary-text-hover: var(--button-primary-text-hover);--wp--preset--color--button-secondary-bg: var(--button-secondary-bg);--wp--preset--color--button-secondary-bg-hover: var(--button-secondary-bg-hover);--wp--preset--color--button-secondary-text: var(--button-secondary-text);--wp--preset--color--button-secondary-text-hover: var(--button-secondary-text-hover);--wp--preset--color--heading: var(--heading);--wp--preset--color--heading-alt: var(--heading-alt);--wp--preset--color--accent-1: var(--accent-1);--wp--preset--color--accent-2: var(--accent-2);--wp--preset--color--accent-3: var(--accent-3);--wp--preset--color--accent-4: var(--accent-4);--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,
1800) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}:where(body) { margin: 0; }:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;text-transform: inherit;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-body-color{color: var(--wp--preset--color--body) !important;}.has-text-color{color: var(--wp--preset--color--text) !important;}.has-text-alt-color{color: var(--wp--preset--color--text-alt) !important;}.has-link-color{color: var(--wp--preset--color--link) !important;}.has-link-hover-color{color: var(--wp--preset--color--link-hover) !important;}.has-nav-color{color: var(--wp--preset--color--nav) !important;}.has-nav-hover-color{color: var(--wp--preset--color--nav-hover) !important;}.has-nav-current-color{color: var(--wp--preset--color--nav-current) !important;}.has-button-primary-bg-color{color: var(--wp--preset--color--button-primary-bg) !important;}.has-button-primary-bg-hover-color{color: var(--wp--preset--color--button-primary-bg-hover) !important;}.has-button-primary-text-color{color: var(--wp--preset--color--button-primary-text) !important;}.has-button-primary-text-hover-color{color: var(--wp--preset--color--button-primary-text-hover) !important;}.has-button-secondary-bg-color{color: var(--wp--preset--color--button-secondary-bg) !important;}.has-button-secondary-bg-hover-color{color: var(--wp--preset--color--button-secondary-bg-hover) !important;}.has-button-secondary-text-color{color: var(--wp--preset--color--button-secondary-text) !important;}.has-button-secondary-text-hover-color{color: var(--wp--preset--color--button-secondary-text-hover) !important;}.has-heading-color{color: var(--wp--preset--color--heading) !important;}.has-heading-alt-color{color: var(--wp--preset--color--heading-alt) !important;}.has-accent-1-color{color: var(--wp--preset--color--accent-1) !important;}.has-accent-2-color{color: var(--wp--preset--color--accent-2) !important;}.has-accent-3-color{color: var(--wp--preset--color--accent-3) !important;}.has-accent-4-color{color: var(--wp--preset--color--accent-4) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-body-background-color{background-color: var(--wp--preset--color--body) !important;}.has-text-background-color{background-color: var(--wp--preset--color--text) !important;}.has-text-alt-background-color{background-color: var(--wp--preset--color--text-alt) !important;}.has-link-background-color{background-color: var(--wp--preset--color--link) !important;}.has-link-hover-background-color{background-color: var(--wp--preset--color--link-hover) !important;}.has-nav-background-color{background-color: var(--wp--preset--color--nav) !important;}.has-nav-hover-background-color{background-color: var(--wp--preset--color--nav-hover) !important;}.has-nav-current-background-color{background-color: var(--wp--preset--color--nav-current) !important;}.has-button-primary-bg-background-color{background-color: var(--wp--preset--color--button-primary-bg) !important;}.has-button-primary-bg-hover-background-color{background-color: var(--wp--preset--color--button-primary-bg-hover) !important;}.has-button-primary-text-background-color{background-color: var(--wp--preset--color--button-primary-text) !important;}.has-button-primary-text-hover-background-color{background-color: var(--wp--preset--color--button-primary-text-hover) !important;}.has-button-secondary-bg-background-color{background-color: var(--wp--preset--color--button-secondary-bg) !important;}.has-button-secondary-bg-hover-background-color{background-color: var(--wp--preset--color--button-secondary-bg-hover) !important;}.has-button-secondary-text-background-color{background-color: var(--wp--preset--color--button-secondary-text) !important;}.has-button-secondary-text-hover-background-color{background-color: var(--wp--preset--color--button-secondary-text-hover) !important;}.has-heading-background-color{background-color: var(--wp--preset--color--heading) !important;}.has-heading-alt-background-color{background-color: var(--wp--preset--color--heading-alt) !important;}.has-accent-1-background-color{background-color: var(--wp--preset--color--accent-1) !important;}.has-accent-2-background-color{background-color: var(--wp--preset--color--accent-2) !important;}.has-accent-3-background-color{background-color: var(--wp--preset--color--accent-3) !important;}.has-accent-4-background-color{background-color: var(--wp--preset--color--accent-4) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-body-border-color{border-color: var(--wp--preset--color--body) !important;}.has-text-border-color{border-color: var(--wp--preset--color--text) !important;}.has-text-alt-border-color{border-color: var(--wp--preset--color--text-alt) !important;}.has-link-border-color{border-color: var(--wp--preset--color--link) !important;}.has-link-hover-border-color{border-color: var(--wp--preset--color--link-hover) !important;}.has-nav-border-color{border-color: var(--wp--preset--color--nav) !important;}.has-nav-hover-border-color{border-color: var(--wp--preset--color--nav-hover) !important;}.has-nav-current-border-color{border-color: var(--wp--preset--color--nav-current) !important;}.has-button-primary-bg-border-color{border-color: var(--wp--preset--color--button-primary-bg) !important;}.has-button-primary-bg-hover-border-color{border-color: var(--wp--preset--color--button-primary-bg-hover) !important;}.has-button-primary-text-border-color{border-color: var(--wp--preset--color--button-primary-text) !important;}.has-button-primary-text-hover-border-color{border-color: var(--wp--preset--color--button-primary-text-hover) !important;}.has-button-secondary-bg-border-color{border-color: var(--wp--preset--color--button-secondary-bg) !important;}.has-button-secondary-bg-hover-border-color{border-color: var(--wp--preset--color--button-secondary-bg-hover) !important;}.has-button-secondary-text-border-color{border-color: var(--wp--preset--color--button-secondary-text) !important;}.has-button-secondary-text-hover-border-color{border-color: var(--wp--preset--color--button-secondary-text-hover) !important;}.has-heading-border-color{border-color: var(--wp--preset--color--heading) !important;}.has-heading-alt-border-color{border-color: var(--wp--preset--color--heading-alt) !important;}.has-accent-1-border-color{border-color: var(--wp--preset--color--accent-1) !important;}.has-accent-2-border-color{border-color: var(--wp--preset--color--accent-2) !important;}.has-accent-3-border-color{border-color: var(--wp--preset--color--accent-3) !important;}.has-accent-4-border-color{border-color: var(--wp--preset--color--accent-4) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
180.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} 181/*# sourceURL=global-styles-inline-css */ 182</style> 183 184<link rel='stylesheet' id='somdn-style-css' href='https://www.cncsourced.com/wp-content/plugins/download-now-for-woocommerce/assets/css/somdn-style.css?ver=7.0.6' media='all' /> 185<link rel='stylesheet' id='generateblocks-google-fonts-css' href='https://fonts.googleapis.com/css?family=Inter:100,200,300,regular,500,600,700,800,900&display=swap' media='all' /> 186<link rel='stylesheet' id='novashare-css-css' href='https://www.cncsourced.com/wp-content/plugins/novashare/css/style.min.css?ver=1.4.6' media='all' /> 187<link rel='stylesheet' id='mailerlite_forms.css-css' href='https://www.cncsourced.com/wp-content/plugins/official-mailerlite-sign-up-forms/assets/css/mailerlite_forms.css?ver=1.7.5' media='all' /> 188<link rel='stylesheet' id='woocommerce-layout-css' href='https://c0.wp.com/p/woocommerce/8.6.1/assets/css/woocommerce-layout.css' media='all' /> 189<style id="woocommerce-layout-inline-css"> 190 191 .infinite-scroll .woocommerce-pagination { 192 display: none; 193 } 194/*# sourceURL=woocommerce-layout-inline-css */ 195</style> 196<link rel='stylesheet' id='woocommerce-smallscreen-css' href='https://c0.wp.com/p/woocommerce/8.6.1/assets/css/woocommerce-smallscreen.css' media='only screen and (max-width: 768px)' /> 197<link rel='stylesheet' id='woocommerce-general-css' href='https://c0.wp.com/p/woocommerce/8.6.1/assets/css/woocommerce.css' media='all' /> 198<style id="woocommerce-general-inline-css"> 199.woocommerce .page-header-image-single {display: none;}.woocommerce .entry-content,.woocommerce .product .entry-summary {margin-top: 0;}.related.products {clear: both;}.checkout-subscribe-prompt.clear {visibility: visible;height: initial;width: initial;}@media (max-width:768px) {.woocommerce .woocommerce-ordering,.woocommerce-page .woocommerce-ordering {float: none;}.woocommerce .woocommerce-ordering select {max-width: 100%;}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product,.woocommerce-page[class*=columns-] ul.products li.product,.woocommerce[class*=columns-] ul.products li.product {width: 100%;float: none;}} 200/*# sourceURL=woocommerce-general-inline-css */ 201</style> 202<style id="woocommerce-inline-inline-css"> 203.woocommerce form .form-row .required { visibility: visible; } 204/*# sourceURL=woocommerce-inline-inline-css */ 205</style> 206<link rel='stylesheet' id='lasso-live-css' href='https://www.cncsourced.com/wp-content/plugins/lasso/admin/assets/css/lasso-live.min.css?ver=1787657218' media='all' /> 207<link rel='stylesheet' id='lasso-table-frontend-css' href='https://www.cncsourced.com/wp-content/plugins/lasso/admin/assets/css/lasso-table-frontend.min.css?ver=1787657218' media='all' /> 208<style id="jetpack-stats-inline-css"> 209img#wpstats{display:none} 210/*# sourceURL=jetpack-stats-inline-css */ 211</style> 212<link rel='stylesheet' id='daexthefu-google-font-css' href='https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&&ver=7.0.6#038;display=swap' media='all' /> 213<link rel='stylesheet' id='daexthefu-general-css' href='https://www.cncsourced.com/wp-content/plugins/daext-helpful/public/assets/css/general.css?ver=1.08' media='all' /> 214<link rel='stylesheet' id='daexthefu-custom-css' href='https://www.cncsourced.com/wp-content/uploads/daexthefu_uploads/custom-1.css?ver=1.08' media='all' /> 215<link rel='stylesheet' id='generate-widget-areas-css' href='https://www.cncsourced.com/wp-content/themes/generatepress/assets/css/components/widget-areas.min.css?ver=3.3.1' media='all' /> 216<link rel='stylesheet' id='generate-style-css' href='https://www.cncsourced.com/wp-content/themes/generatepress/assets/css/main.min.css?ver=3.3.1' media='all' /> 217<style id="generate-style-inline-css"> 218.is-right-sidebar{width:30%;}.is-left-sidebar{width:30%;}.site-content .content-area{width:100%;}@media (max-width: 1024px){.main-navigation .menu-toggle,.sidebar-nav-mobile:not(#sticky-placeholder){display:block;}.main-navigation ul,.gen-sidebar-nav,.main-navigation:not(.slideout-navigation):not(.toggled) .main-nav > ul,.has-inline-mobile-toggle #site-navigation .inside-navigation > *:not(.navigation-search):not(.main-nav){display:none;}.nav-align-right .inside-navigation,.nav-align-center .inside-navigation{justify-content:space-between;}.has-inline-mobile-toggle .mobile-menu-control-wrapper{display:flex;flex-wrap:wrap;}
218.has-inline-mobile-toggle .inside-header{flex-direction:row;text-align:left;flex-wrap:wrap;}.has-inline-mobile-toggle .header-widget,.has-inline-mobile-toggle #site-navigation{flex-basis:100%;}.nav-float-left .has-inline-mobile-toggle #site-navigation{order:10;}} 219.dynamic-author-image-rounded{border-radius:100%;}.dynamic-featured-image, .dynamic-author-image{vertical-align:middle;}.one-container.blog .dynamic-content-template:not(:last-child), .one-container.archive .dynamic-content-template:not(:last-child){padding-bottom:0px;}.dynamic-entry-excerpt > p:last-child{margin-bottom:0px;} 220/*# sourceURL=generate-style-inline-css */ 221</style> 222<link rel='stylesheet' id='generate-google-fonts-css' href='https://fonts.googleapis.com/css?family=Inter:100,200,300,regular,500,600,700,800,900&display=auto&ver=3.3.1' media='all' /> 223<link rel='stylesheet' id='generatepress-dynamic-css' href='https://www.cncsourced.com/wp-content/uploads/generatepress/style.min.css?ver=1787657167' media='all' /> 224<link rel='stylesheet' id='generate-child-css' href='https://www.cncsourced.com/wp-content/themes/generatepress_child/style.css?ver=1787657208' media='all' /> 225<link rel='stylesheet' id='generateblocks-css' href='https://www.cncsourced.com/wp-content/uploads/generateblocks/style-15231.css?ver=1787657167' media='all' /> 226<style id="kadence-blocks-global-variables-inline-css"> 227:root {--global-kb-font-size-sm:clamp(0.8rem, 0.73rem + 0.217vw, 0.9rem);--global-kb-font-size-md:clamp(1.1rem, 0.995rem + 0.326vw, 1.25rem);--global-kb-font-size-lg:clamp(1.75rem, 1.576rem + 0.543vw, 2rem);--global-kb-font-size-xl:clamp(2.25rem, 1.728rem + 1.63vw, 3rem);--global-kb-font-size-xxl:clamp(2.5rem, 1.456rem + 3.26vw, 4rem);--global-kb-font-size-xxxl:clamp(2.75rem, 0.489rem + 7.065vw, 6rem);}:root {--global-palette1: #3182CE;--global-palette2: #2B6CB0;--global-palette3: #1A202C;--global-palette4: #2D3748;--global-palette5: #4A5568;--global-palette6: #718096;--global-palette7: #EDF2F7;--global-palette8: #F7FAFC;--global-palette9: #ffffff;} 228/*# sourceURL=kadence-blocks-global-variables-inline-css */ 229</style> 230<link rel='stylesheet' id='generate-offside-css' href='https://www.cncsourced.com/wp-content/plugins/gp-premium/menu-plus/functions/css/offside.min.css?ver=2.3.2' media='all' /> 231<style id="generate-offside-inline-css"> 232:root{--gp-slideout-width:265px;}.slideout-navigation.main-navigation{background-color:var(--text);}.slideout-navigation.main-navigation .main-nav ul li a{color:var(--nav);}.slideout-navigation.main-navigation .main-nav ul li:not([class*="current-menu-"]):hover > a, .slideout-navigation.main-navigation .main-nav ul li:not([class*="current-menu-"]):focus > a, .slideout-navigation.main-navigation .main-nav ul li.sfHover:not([class*="current-menu-"]) > a{color:var(--nav-hover);background-color:var(--text);}.slideout-navigation.main-navigation .main-nav ul li[class*="current-menu-"] > a{color:var(--nav-hover);background-color:var(--text);}.slideout-navigation, .slideout-navigation a{color:var(--nav);}.slideout-navigation button.slideout-exit{color:var(--nav);padding-left:16px;padding-right:16px;}.slide-opened nav.toggled .menu-toggle:before{display:none;}@media (max-width: 1024px){.menu-bar-item.slideout-toggle{display:none;}} 233/*# sourceURL=generate-offside-inline-css */ 234</style> 235<link rel='stylesheet' id='sharedaddy-css' href='https://c0.wp.com/p/jetpack/16.2/modules/sharedaddy/sharing.css' media='all' /> 236<link rel='stylesheet' id='social-logos-css' href='https://c0.wp.com/p/jetpack/16.2/_inc/build/social-logos/social-logos.css' media='all' />
237<script id="wp-hooks-js" src="https://c0.wp.com/c/7.0.6/wp-includes/js/dist/hooks.min.js"></script>
vendor: 1 bytes, line 237
237
238<script id="woo-tracks-js" src="https://stats.wp.com/w.js?ver=202640"></script>
vendor: 1 bytes, line 238
238
239<script id="jquery-core-js" src="https://c0.wp.com/c/7.0.6/wp-includes/js/jquery/jquery.min.js"></script>
vendor: 1 bytes, line 239
239
240<script id="jquery-migrate-js" src="https://c0.wp.com/c/7.0.6/wp-includes/js/jquery/jquery-migrate.min.js"></script>
vendor: 1 bytes, line 240
240
241<script data-wp-strategy="defer" defer id="jquery-blockui-js" src="https://c0.wp.com/p/woocommerce/8.6.1/assets/js/jquery-blockui/jquery.blockUI.min.js"></script>
vendor: 1 bytes, line 241
241
242<script id="wc-add-to-cart-js-extra"> 243var wc_add_to_cart_params = {"ajax_url":"/wp-admin/admin-ajax.php","wc_ajax_url":"/?wc-ajax=%%endpoint%%","i18n_view_cart":"View cart","cart_url":"https://www.cncsourced.com/cart/","is_cart":"","cart_redirect_after_add":"no"}; 244//# sourceURL=wc-add-to-cart-js-extra 245</script>
vendor: 1 bytes, line 245
245
246<script data-wp-strategy="defer" defer id="wc-add-to-cart-js" src="https://c0.wp.com/p/woocommerce/8.6.1/assets/js/frontend/add-to-cart.min.js"></script>
vendor: 1 bytes, line 246
246
247<script data-wp-strategy="defer" defer id="js-cookie-js" src="https://c0.wp.com/p/woocommerce/8.6.1/assets/js/js-cookie/js.cookie.min.js"></script>
vendor: 1 bytes, line 247
247
248<script id="woocommerce-js-extra"> 249var woocommerce_params = {"ajax_url":"/wp-admin/admin-ajax.php","wc_ajax_url":"/?wc-ajax=%%endpoint%%"}; 250//# sourceURL=woocommerce-js-extra 251</script>
vendor: 1 bytes, line 251
251
252<script data-wp-strategy="defer" defer id="woocommerce-js" src="https://c0.wp.com/p/woocommerce/8.6.1/assets/js/frontend/woocommerce.min.js"></script>
vendor: 1 bytes, line 252
252
253<script data-wp-strategy="defer" defer id="woocommerce-analytics-js" src="https://stats.wp.com/s-202640.js"></script>
253 254 255<!-- Google tag (gtag.js) snippet added by Site Kit --> 256<!-- Google Analytics snippet added by Site Kit -->
vendor: 80 bytes, lines 256-257
256 257<script id="google_gtagjs-js" src="https://www.googletagmanager.com/gtag/js?id=
257G-KHHBSY9MR2
vendor: 18 bytes, line 257
257" async></script>
258<script id="google_gtagjs-js-after"> 259window.dataLayer = window.dataLayer || [];function gtag(){dataLayer.push(arguments);} 260gtag("set","linker",{"domains":["www.cncsourced.com"]}); 261gtag("js", new Date()); 262gtag("set", "developer_id.dZTNiMT", true); 263gtag("config", "G-KHHBSY9MR2"); 264//# sourceURL=google_gtagjs-js-after 265</script>
265 266<link rel="https://api.w.org/" href="https://www.cncsourced.com/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://www.cncsourced.com/wp-json/wp/v2/pages/15231" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://www.cncsourced.com/xmlrpc.php?rsd" /> 267<meta name="generator" content="WordPress 7.0.6" /> 268<link rel='shortlink' href='https://www.cncsourced.com/?p=15231' /> 269<meta name="generator" content="Site Kit by Google 1.188.0" /> <!-- MailerLite Universal --> 270
270<script> 271 (function(w,d,e,u,f,l,n){w[f]=w[f]||function(){(w[f].q=w[f].q||[]) 272 .push(arguments);},l=d.createElement(e),l.async=1,l.src=u, 273 n=d.getElementsByTagName(e)[0],n.parentNode.insertBefore(l,n);}) 274 (window,document,'script','https://assets.mailerlite.com/js/universal.js','ml'); 275 ml('account', '149822'); 276 ml('enablePopups', true); 277 </script>
277 278 <!-- End MailerLite Universal --> 279 <style type="text/css"> 280 :root{ 281 --lasso-main: black !important; 282 --lasso-title: black !important; 283 --lasso-button: #f44336 !important; 284 --lasso-secondary-button: #ea9999 !important; 285 --lasso-button-text: white !important; 286 --lasso-background: white !important; 287 --lasso-pros: #22baa0 !important; 288 --lasso-cons: #e06470 !important; 289 } 290 291 292 </style> 293
293<script type="text/javascript"> 294 // Notice how this gets configured before we load Font Awesome 295 window.FontAwesomeConfig = { autoReplaceSvg: false } 296 </script>
296 297 <noscript><style>.woocommerce-product-gallery{ opacity: 1 !important; }</style></noscript> 298 <style id="uagb-style-conditional-extension">@media (min-width: 1025px){body .uag-hide-desktop.uagb-google-map__wrap,body .uag-hide-desktop{display:none !important}}@media (min-width: 768px) and (max-width: 1024px){body .uag-hide-tab.uagb-google-map__wrap,body .uag-hide-tab{display:none !important}}@media (max-width: 767px){body .uag-hide-mob.uagb-google-map__wrap,body .uag-hide-mob{display:none !important}}</style><link rel="icon" href="https://www.cncsourced.com/wp-content/uploads/2020/11/cropped-Logo-02-32x32.jpg" sizes="32x32" /> 299<link rel="icon" href="https://www.cncsourced.com/wp-content/uploads/2020/11/cropped-Logo-02-192x192.jpg" sizes="192x192" /> 300<link rel="apple-touch-icon" href="https://www.cncsourced.com/wp-content/uploads/2020/11/cropped-Logo-02-180x180.jpg" /> 301<meta name="msapplication-TileImage" content="https://www.cncsourced.com/wp-content/uploads/2020/11/cropped-Logo-02-270x270.jpg" />
302<script data-no-optimize='1' data-cfasync='false' id='cls-disable-ads-8e1d4c3'>var cls_disable_ads=(function(e){window.adthriveCLS.buildDate=`2026-10-01`,Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});let t=new class{info(e,t,...n){this.call(console.info,e,t,...n)}warn(e,t,...n){this.call(console.warn,e,t,...n)}error(e,t,...n){this.call(console.error,e,t,...n),this.sendErrorLogToCommandQueue(e,t,...n)}event(e,t,...n){var r;((r=window.adthriveCLS)==null?void 0:r.bucket)===`debug`&&this.info(e,t)}sendErrorLogToCommandQueue(e,t,...n){window.adthrive=window.adthrive||{},window.adthrive.cmd=window.adthrive.cmd||[],window.adthrive.cmd.push(()=>{window.adthrive.logError!==void 0&&typeof window.adthrive.logError==`function`&&window.adthrive.logError(e,t,n)})}call(e,t,n,...r){let i=[`%c${t}::${n} `],a=[`color: #999; font-weight: bold;`];r.length>0&&typeof r[0]==`string`&&i.push(r.shift()),a.push(...r);try{Function.prototype.apply.call(e,console,[i.join(``),...a])}catch(e){console.error(e);return}}},n=()=>window.adthriveCLS,r={Below_Post_1:`Below_Post_1`,Below_Post:`Below_Post`,Content:`Content`,Content_1:`Content_1`,Content_2:`Content_2`,Content_3:`Content_3`,Content_4:`Content_4`,Content_5:`Content_5`,Content_6:`Content_6`,Content_7:`Content_7`,Content_8:`Content_8`,Content_9:`Content_9`,Recipe:`Recipe`,Recipe_1:`Recipe_1`,Recipe_2:`Recipe_2`,Recipe_3:`Recipe_3`,Recipe_4:`Recipe_4`,Recipe_5:`Recipe_5`,Native_Recipe:`Native_Recipe`,Footer_1:`Footer_1`,Footer:`Footer`,Header_1:`Header_1`,Header_2:`Header_2`,Header:`Header`,Sidebar_1:`Sidebar_1`,Sidebar_2:`Sidebar_2`,Sidebar_3:`Sidebar_3`,Sidebar_4:`Sidebar_4`,Sidebar_5:`Sidebar_5`,Sidebar_9:`Sidebar_9`,Sidebar:`Sidebar`,Interstitial_1:`Interstitial_1`,Interstitial:`Interstitial`,Video_StickyOutstream_1:`Video_StickyOutstream_1`,Video_StickyOutstream:`Video_StickyOutstream`,Video_StickyInstream:`Video_StickyInstream`,Sponsor_Tile:`Sponsor_Tile`},i=e=>{let t=window.location.href;return e.some(e=>new RegExp(e,`i`).test(t))};function a(e){"@babel/helpers - typeof";return a=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},a(e)}function o(e,t){if(a(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(a(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function s(e){var t=o(e,`string`);return a(t)==`symbol`?t:t+``}function c(e,t,n){return(t=s(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var l=class{constructor(e){this.adthrive=e,c(this,`all`,!1),c(this,`content`,!1),c(this,`recipe`,!1),c(this,`video`,!1),c(this,`locations`,new Set),c(this,`reasons`,new Set),(this.urlHasEmail(window.location.href)||this.urlHasEmail(window.document.referrer))&&(this.all=!0,this.reasons.add(`all_email`));try{this.checkCommandQueue()}catch(e){t.error(`ClsDisableAds`,`checkCommandQueue`,e)}}checkCommandQueue(){this.adthrive&&this.adthrive.cmd&&this.adthrive.cmd.forEach(e=>{let t=e.toString(),n=this.extractAPICall(t,`disableAds`);n&&this.disableAllAds(this.extractPatterns(n));let r=this.extractAPICall(t,`disableContentAds`);r&&this.disableContentAds(this.extractPatterns(r));let i=this.extractAPICall(t,`disablePlaylistPlayers`);i&&this.disablePlaylistPlayers(this.extractPatterns(i))})}extractPatterns(e){let t=e.match(/["'](.*?)['"]/g);if(t!==null)return t.map(e=>e.replace(/["']/g,``))}extractAPICall(e,t){let n=RegExp(t+`\\((.*?)\\)`,`g`),r=e.match(n);return r===null?!1:r[0]}disableAllAds(e){(!e||i(e))&&(this.all=!0,this.reasons.add(`all_page`))}disableContentAds(e){(!e||i(e))&&(this.content=!0,this.recipe=!0,this.locations.add(r.Content),this.locations.add(r.Recipe),this.reasons.add(`content_plugin`))}disablePlaylistPlayers(e){(!e||i(e))&&(this.video=!0,this.locations.add(`Video`),this.reasons.add(`video_page`))}urlHasEmail(e){return e?/([A-Z0-9._%+-]+(@|%(25)*40)[A-Z0-9.-]+\.[A-Z]{2,})/i.exec(e)!==null:!1}};let u=n();return u&&(u.disableAds=new l(window.adthrive)),e.ClsDisableAds=l,e})({});</script>
302<style id="wp-custom-css"> 303 304 305 306.main-navigation ul ul { 307 width: auto; 308 min-width: 200px; 309 white-space: nowrap; 310} 311 312.gb-headline-sidebar-titles .gb-icon { 313 background: white; 314 border: 1px solid #c13232; 315 padding: 2px 2px !important; 316 position: relative; 317 transition: color 0.3s; 318 z-index: 1; 319 margin-right: 16px; 320} 321 322.gb-headline-sidebar-titles .gb-icon:before, .gb-headline-sidebar-titles .gb-icon:after { 323 content: ""; 324 position: absolute; 325 background: white; 326 z-index: -1; 327 transition: all 0.3s ease-in-out; 328} 329 330.gb-headline-sidebar-titles .gb-icon:before { 331 width: calc(100% - .5rem); 332 height: calc(101% + 1rem); 333 top: -0.5rem; 334 left: 50%; 335 transform: translateX(-50%); 336} 337.gb-headline-sidebar-titles .gb-icon:after { 338 height: calc(100% - .5rem); 339 width: calc(101% + 1rem); 340 left: -0.5rem; 341 top: 50%; 342 transform: translateY(-50%); 343} 344 345.no-underline a { 346 text-decoration: none; 347} 348 349.home-h1 { 350 display: none; 351} 352 353.navigation-search input[type="search"], 354.navigation-search input[type="search"]:active, 355.navigation-search input[type="search"]:focus { 356 color: var(--text); 357 background-color: white; 358 359 opacity: .99; 360} 361 362.uagb-toc__list a { 363 text-decoration: none !important; 364 color: var(--link) !important; 365} 366 367.uagb-toc__list a:hover { 368 text-decoration: none !important; 369 color: var(--link-hover) !important; 370} 371 372.post-content .dynamic-entry-content .wp-block-image a { 373 box-shadow: 0px 0px 0px transparent inset !important; 374 text-decoration: underline !important; 375} 376 377.post-content .dynamic-entry-content a:not(.gb-button) { 378 box-shadow: 0px -1px 0px var(--link) inset; 379 padding-bottom: 2px; 380 transition: all 0.4s ease 0s; 381 text-decoration: none; 382} 383 384.post-content .dynamic-entry-content a:hover:not(.gb-button) { 385 box-shadow: 0px -10px 0px #DD333420 inset; 386 387} 388 389 390.template-a-feat-img { 391 outline: 4px solid white; 392 box-shadow: 0px 5px 20px #26262620; 393} 394 395.post-content p { 396 line-height: 1.6; 397} 398 399/* Comments Area */ 400 401.comments-area { 402 display: none; 403} 404 405/* Post Author Box */ 406 407.post-author-box { 408 font-size: 16px; 409} 410 411.post-author-box img{ 412 border-radius: 4px; 413} 414 415.gb-headline-big-card-title a{ 416 color: var(--text) !important; 417} 418 419 420.gb-headline-7589df47 > img { 421 display: none; 422} 423 424 425.gb-image-big-card-img { 426 aspect-ratio: 16/9; 427 object-fit: cover; 428} 429 430 431.gb-image-sidebar-card-img { 432 aspect-ratio: 16/9; 433 object-fit: cover; 434} 435 436 437/* local patterns */ 438 439.no-title-margin h2, 440.no-title-margin h3, 441.no-title-margin h4{ 442 margin-top: 0px; 443} 444 445.post-content .dynamic-entry-content .wp-block-image { 446 margin-bottom: 32px; 447} 448 449.post-content .dynamic-entry-content img { 450 border-radius: 4px; 451} 452 453blockquote { 454 455} 456 457blockquote { 458 border-left: 0px; 459 padding: 32px 32px 32px 57px; 460 font-size: 1.35rem; 461 position: relative; 462 background-color: var(--accent-1); 463 border-radius: 7px; 464 border: 1px solid #DD3334; 465 box-shadow: 5px 5px 0px #DD333440 466} 467 468blockquote:before { 469 position: absolute; 470 content:''; 471 background-image: url('https://www.3dsourced.com/wp-content/uploads/2022/10/blockquote-circle.svg'); 472 background-position: center center; 473 background-size: contain; 474 top: 24px; 475 left: -25px; 476 font-size: 50px; 477 width: 50px; 478 height: 50px; 479 box-shadow: 3px 3px 0px var(--accent-2); 480 border-radius: 100%; 481 border: 1px solid var(--accent-3); 482} 483 484@media (min-width: 769px) and (max-width: 1024px) { 485 blockquote:before{ 486 width: 40px; 487 height: 40px; 488 left: -20px 489 } 490 491 blockquote{ 492 padding-left: 47px; 493 } 494 495} 496 497@media (max-width: 768px) { 498 blockquote:before{ 499 width: 40px; 500 height: 40px; 501 left: 24px; 502 top: -20px; 503 } 504 505 blockquote{ 506 padding: 32px 24px 24px 24px; 507 margin-top: 40px; 508 509 } 510} 511 512/* Blog Post Lists */ 513 514 515 516.post-content .dynamic-entry-content li { 517 background-image: url(https://www.3dsourced.com/wp-content/uploads/2022/10/Bullet-1.svg); 518 background-repeat: no-repeat; 519 background-position: 0 .35em; 520 padding-top: 0; 521 padding-left: 1.2em; 522 padding-right: 0; 523 padding-bottom: 0; 524 list-style-type: none; 525 margin-bottom: 1em; 526} 527 528/* Tables */ 529 530.post-content .dynamic-entry-content tr:nth-child(even) { 531 background: var(--accent-1) 532} 533 534.post-content .dynamic-entry-content thead{ 535 background-color: #DD333440; 536 color: ; 537} 538 539.wp-block-table { 540 border-radius: 5px 541} 542 543.post-content .dynamic-entry-content thead th{ 544 padding-block: 18px; 545} 546 547.post-content .dynamic-entry-content thead th { 548 border: 1px solid #ffffff20; 549} 550 551.post-content table, .post-content td, .post-content th { 552 border: 1px solid var(--accent-1); 553 font-size: 16px; 554 text-align: center; 555} 556 557/* POST TEMPLATES */ 558/* Template C - Sticky Sidebar */ 559@media (min-width: 1024px) { 560 .template-c--left-sidebar .gb-inside-container { 561 height: 100%; 562 position: relative; 563 } 564 #sticky-sidebar-wrap { 565 position: sticky; 566 top: 3rem; 567 } 568 569} 570 571/* Sticky Sidebar TOC */ 572 573.kb-table-of-content-nav .kb-table-of-content-wrap .kb-table-of-content-list { 574 list-style: none !important; 575 padding-left: 0px !important; 576} 577 578.kb-table-of-content-nav .kb-table-of-content-wrap .kb-table-of-content-list li { 579 font-size: 14px; 580 581} 582 583 584.kb-table-of-content-nav .kb-table-of-content-wrap .kb-table-of-content-list a { 585 text-decoration: none !important; 586 587} 588 589 590 591.kb-table-of-contents-title-wrap .kb-table-of-contents-title { 592 font-size: 16px !important; 593} 594 595.active{ 596 position: relative; 597} 598 599li.active:before { 600 content:''; 601 position: absolute; 602 width: 2px; 603 height: 100%; 604 background-color: var(--link); 605 left: -20px; 606} 607 608.kb-table-of-content-nav .kb-table-of-content-wrap .kb-table-of-content-list li { 609 list-style: none; 610 611} 612 613.kb-table-of-content-nav .kb-table-of-content-wrap .kb-table-of-content-list li>ol, li>ul{ 614 padding-left: 0px !important; 615 margin-left: 0px !important 616} 617 618ul.kb-table-of-contents-list-sub li { 619 margin-left: .75rem; 620 font-size: 13px !important; 621} 622 623/* Hides list style on main content Table of Contents */ 624#page .uagb-toc__list { 625 list-style-type: none!important; 626} 627 628html { 629 scroll-behavior: smooth; 630} 631 632 633/* LOCAL PATTERN STYLE OVERRIDES * 634 * Added by Jake W - 25/10/2022 * 635 * * 636 * Added to override child theme * 637 * vs GB Global style conflicts * 638 * * 639 * Friendly reminder: * 640 * Do not change the class names * 641 * in global styles, otherwise * 642 * these will break. */ 643 644/* Top Picks Pattern */ 645h2.gb-headline-ec7f6a68 { 646 margin: 0 0 24px; 647} 648.gb-headline-5e2a7b42 { 649 margin-bottom: 8px; 650} 651#top-picks-pattern a { 652 font-weight: 700; 653} 654 655/* Question Box Pattern */ 656h2.gb-headline-ec198c29 { 657 margin-bottom: 0; 658} 659.gb-grid-wrapper-13867f42 .gb-grid-column { 660 align-items: center; 661} 662 663/* Pros & Cons Pattern */ 664p.gb-headline-a7803bff, 665p.gb-headline-ec22c345, 666p.gb-headline-cca0dfdf { 667 margin-bottom: 8px; 668} 669 670/* Product Pick - 3 Col Pattern */ 671.gb-image-23bd419a { 672 margin-bottom: 16px; 673} 674.gb-grid-column-bff3e938 .gb-button-primary-default { 675 margin-bottom: 8px; 676} 677.gb-headline-3f37f1db { 678 display: block; 679} 680 681/* Product Pick - 2 Col Pattern */ 682.gb-image-5f7f9894 { 683 margin-bottom: 16px; 684} 685.gb-grid-column-07b192ad .gb-button-primary-default { 686 margin-bottom: 8px; 687} 688.gb-headline-d848ef1d {
689 display: block; 690} 691 692/* Product Pick - 1 Col Pattern */ 693.gb-image-259c4cf8 { 694 margin-bottom: 16px; 695} 696#product-pick-1col .gb-button-primary-default { 697 margin-bottom: 8px; 698} 699.gb-headline-05b3c949, 700.gb-headline-a426820f { 701 margin-bottom: 8px; 702} 703 704/* A vs B Pattern */ 705#a-b-pattern figure.gb-block-image { 706 padding-bottom: 24px; 707 text-align: center; 708} 709.gb-headline-8b80fa7c, 710.gb-headline-549263b9, 711.gb-headline-80eeb86a, 712.gb-headline-45f49a87 { 713 margin-bottom: 8px; 714} 715.gb-headline-8b80fa7c, 716.gb-headline-549263b9 { 717 display: block; 718} 719 720/* Features Benefits */ 721.gb-image-9d3fa2b2 { 722 padding-bottom: 24px; 723} 724.gb-headline-42e82eda { 725 margin-bottom: 8px; 726} 727.gb-grid-wrapper-b6d3046d { 728 align-items: center; 729} 730 731/* Info Box */ 732.gb-grid-wrapper-5ca26d74 { 733 align-items: center; 734} 735.gb-headline-1868713f { 736 margin-bottom: 0; 737} 738.gb-headline-1868713f .gb-icon { 739 font-size: 2em; 740} 741 742/* Calculator Tweaks */ 743 744.calculator { 745 font-size: .8em 746} 747 748.calculator > * *{ 749 margin-right: .5em; 750 margin-bottom: .5em 751} 752 753.calculator small { 754 display: flex; 755} 756 757.calculate { 758 margin-top: 32px; 759 background-color: var(--link); 760 max-width: max-content; 761 padding: 8px 24px; 762 border-radius: 4px; 763 color: white; 764 font-weight: 400; 765 font-size: 1em; 766} 767 768.calculate:hover{ 769 background-color: var(--link-hover); 770 cursor: pointer; 771} 772 773/* Author Popup */ 774 775@media (min-width: 1025px) { 776 .author-popup{ 777 width: 510px; 778 position: absolute; 779 display: none; 780 781 782 } 783 .author-link:hover ~ .author-popup{ 784 display: block; 785 z-index: 100; 786 } 787 788 .author-popup:hover{ 789 display: block; 790 z-index: 100; 791 } 792 793} 794.author-popup { 795 display: none; 796} 797 798 799.gb-container-94ef5574 { 800 background-color: var(--accent-1) !important; 801} 802 803 804/* Lasso Button */ 805 806a.lasso-button-1, a.lasso-button-2 { 807 background-color: var(--button-primary-bg) !important; 808} 809 810a.lasso-button-1:hover, a.lasso-button-2:hover { 811 background-color: var(--button-primary-bg-hover) !important; 812} 813 814 815.lasso-image a img { 816 box-shadow: none !important; 817} 818 819 820.post-content .dynamic-entry-content a.lasso-image { 821 box-shadow: 0px 0px 0px #ffffff; 822} 823 824 825.post-content .dynamic-entry-content a.lasso-image:hover { 826 box-shadow: 0px 0px 0px #ffffff; 827} 828 829 830.gb-button:not(.gb-button-secondary-default) { 831 background-color: var(--button-primary-bg) !important; 832} 833 .gb-button:not(.gb-button-secondary-default):hover{ 834 background-color: var(--button-primary-bg-hover) !important; 835} 836 837.site-footer a { 838 text-decoration: none; 839} 840 841</style> 842</head> 843 844<body class="wp-singular page-template-default page page-id-15231 wp-custom-logo wp-embed-responsive wp-theme-generatepress wp-child-theme-generatepress_child theme-generatepress post-image-aligned-center slideout-enabled slideout-mobile sticky-menu-fade woocommerce-no-js lasso-v323 adthrive-disable-all no-sidebar nav-float-right one-container nav-search-enabled header-aligned-left dropdown-hover full-width-content aa-prefix-cncso-" itemtype="https://schema.org/WebPage" itemscope> 845 <a class="screen-reader-text skip-link" href="#content" title="Skip to content">Skip to content</a> <header class="site-header has-inline-mobile-toggle" id="masthead" aria-label="Site" itemtype="https://schema.org/WPHeader" itemscope> 846 <div class="inside-header grid-container"> 847 <div class="site-logo"> 848 <a href="https://www.cncsourced.com/" rel="home"> 849 <img class="header-image is-logo-image" alt="CNCSourced" src="https://www.cncsourced.com/wp-content/uploads/2022/03/CNC_TRANSPARENT.png" width="1600" height="500" /> 850 </a> 851 </div> <nav class="main-navigation mobile-menu-control-wrapper" id="mobile-menu-control-wrapper" aria-label="Mobile Toggle"> 852 <div class="menu-bar-items"><span class="menu-bar-item search-item"><a aria-label="Open Search Bar" href="#"><span class="gp-icon icon-search"><svg viewBox="0 0 512 512" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="1em" height="1em"><path fill-rule="evenodd" clip-rule="evenodd" d="M208 48c-88.366 0-160 71.634-160 160s71.634 160 160 160 160-71.634 160-160S296.366 48 208 48zM0 208C0 93.125 93.125 0 208 0s208 93.125 208 208c0 48.741-16.765 93.566-44.843 129.024l133.826 134.018c9.366 9.379 9.355 24.575-.025 33.941-9.379 9.366-24.575 9.355-33.941-.025L337.238 370.987C301.747 399.167 256.839 416 208 416 93.125 416 0 322.875 0 208z" /></svg><svg viewBox="0 0 512 512" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="1em" height="1em"><path d="M71.029 71.029c9.373-9.372 24.569-9.372 33.942 0L256 222.059l151.029-151.
85203c9.373-9.372 24.569-9.372 33.942 0 9.372 9.373 9.372 24.569 0 33.942L289.941 256l151.03 151.029c9.372 9.373 9.372 24.569 0 33.942-9.373 9.372-24.569 9.372-33.942 0L256 289.941l-151.029 151.03c-9.373 9.372-24.569 9.372-33.942 0-9.372-9.373-9.372-24.569 0-33.942L222.059 256 71.029 104.971c-9.372-9.373-9.372-24.569 0-33.942z" /></svg></span></a></span></div> <button data-nav="site-navigation" class="menu-toggle" aria-controls="generate-slideout-menu" aria-expanded="false"> 853 <span class="gp-icon icon-menu-bars"><svg viewBox="0 0 512 512" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="1em" height="1em"><path d="M0 96c0-13.255 10.745-24 24-24h464c13.255 0 24 10.745 24 24s-10.745 24-24 24H24c-13.255 0-24-10.745-24-24zm0 160c0-13.255 10.745-24 24-24h464c13.255 0 24 10.745 24 24s-10.745 24-24 24H24c-13.255 0-24-10.745-24-24zm0 160c0-13.255 10.745-24 24-24h464c13.255 0 24 10.745 24 24s-10.745 24-24 24H24c-13.255 0-24-10.745-24-24z" /></svg><svg viewBox="0 0 512 512" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="1em" height="1em"><path d="M71.029 71.029c9.373-9.372 24.569-9.372 33.942 0L256 222.059l151.029-151.03c9.373-9.372 24.569-9.372 33.942 0 9.372 9.373 9.372 24.569 0 33.942L289.941 256l151.03 151.029c9.372 9.373 9.372 24.569 0 33.942-9.373 9.372-24.569 9.372-33.942 0L256 289.941l-151.029 151.03c-9.373 9.372-24.569 9.372-33.942 0-9.372-9.373-9.372-24.569 0-33.942L222.059 256 71.029 104.971c-9.372-9.373-9.372-24.569 0-33.942z" /></svg></span><span class="screen-reader-text">Menu</span> </button> 854 </nav> 855 <nav class="main-navigation has-menu-bar-items sub-menu-right" id="site-navigation" aria-label="Primary" itemtype="https://schema.org/SiteNavigationElement" itemscope> 856 <div class="inside-navigation grid-container"> 857 <form method="get" class="search-form navigation-search" action="https://www.cncsourced.com/"> 858 <input type="search" class="search-field" value="" name="s" title="Search" /> 859 </form> <button class="menu-toggle" aria-controls="generate-slideout-menu" aria-expanded="false"> 860 <span class="gp-icon icon-menu-bars"><svg viewBox="0 0 512 512" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="1em" height="1em"><path d="M0 96c0-13.255 10.745-24 24-24h464c13.255 0 24 10.745 24 24s-10.745 24-24 24H24c-13.255 0-24-10.745-24-24zm0 160c0-13.255 10.745-24 24-24h464c13.255 0 24 10.745 24 24s-10.745 24-24 24H24c-13.255 0-24-10.745-24-24zm0 160c0-13.255 10.745-24 24-24h464c13.255 0 24 10.745 24 24s-10.745 24-24 24H24c-13.255 0-24-10.745-24-24z" /></svg><svg viewBox="0 0 512 512" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="1em" height="1em"><path d="M71.029 71.029c9.373-9.372 24.569-9.372 33.942 0L256 222.059l151.029-151.03c9.373-9.372 24.569-9.372 33.942 0 9.372 9.373 9.372 24.569 0 33.942L289.941 256l151.03 151.029c9.372 9.373 9.372 24.569 0 33.942-9.373 9.372-24.569 9.372-33.942 0L256 289.941l-151.029 151.03c-9.373 9.372-24.569 9.372-33.942 0-9.372-9.373-9.372-24.569 0-33.942L222.059 256 71.029 104.971c-9.372-9.373-9.372-24.569 0-33.942z" /></svg></span><span class="screen-reader-text">Menu</span> </button> 861 <div id="primary-menu" class="main-nav"><ul id="menu-main-menu" class=" menu sf-menu"><li id="menu-item-20590" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-20590"><a href="#">CNC<span role="presentation" class="dropdown-menu-toggle"><span class="gp-icon icon-arrow"><svg viewBox="0 0 330 512" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="1em" height="1em"><path d="M305.913 197.085c0 2.266-1.133 4.815-2.833 6.514L171.087 335.593c-1.7 1.7-4.249 2.832-6.515 2.832s-4.815-1.133-6.515-2.832L26.064 203.599c-1.7-1.7-2.832-4.248-2.832-6.514s1.132-4.816 2.832-6.515l14.162-14.163c1.7-1.699 3.966-2.832 6.515-2.832 2.266 0 4.815 1.133 6.515 2.832l111.316 111.317 111.316-111.317c1.7-1.699 4.249-2.832 6.515-2.832s4.815 1.133 6.515 2.832l14.162 14.163c1.7 1.7 2.833 4.249 2.833 6.515z" /></svg></span></span></a> 862<ul class="sub-menu"> 863 <li id="menu-item-20118" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20118"><a href="https://www.cncsourced.com/category/guides/cnc-guides/">CNC Guides</a></li> 864 <li id="menu-item-20594" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20594"><a href="https://www.cncsourced.com/category/rankings/cnc-rankings/">CNC Rankings</a></li> 865 <li id="menu-item-20592" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20592"><a href="https://www.cncsourced.com/category/comparisons/cnc-comparisons/">CNC Comparisons</a></li> 866 <li id="menu-item-20119" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20119"><a href="https://www.cncsourced.com/category/reviews/cnc-reviews/">CNC Reviews</a></li> 867 <li id="menu-item-20593" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20593"><a href="https://www.cncsourced.com/category/projects/cnc-plans/">CNC Projects & Plans</a></li> 868 <li id="menu-item-4720" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-4720"><a href="https://www.cncsourced.com/category/cnc-routers/">CNC Routers</a></li> 869 <li id="menu-item-20591" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20591"><a href="https://www.cncsourced.com/category/cnc-machining/">CNC Machining</a></li> 870</ul> 871</li> 872<li id="menu-item-4721" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-4721"><a href="https://www.cncsourced.com/category/laser-cutters/">Laser Cutters<span role="presentation" class="dropdown-menu-toggle">
872<span class="gp-icon icon-arrow"><svg viewBox="0 0 330 512" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="1em" height="1em"><path d="M305.913 197.085c0 2.266-1.133 4.815-2.833 6.514L171.087 335.593c-1.7 1.7-4.249 2.832-6.515 2.832s-4.815-1.133-6.515-2.832L26.064 203.599c-1.7-1.7-2.832-4.248-2.832-6.514s1.132-4.816 2.832-6.515l14.162-14.163c1.7-1.699 3.966-2.832 6.515-2.832 2.266 0 4.815 1.133 6.515 2.832l111.316 111.317 111.316-111.317c1.7-1.699 4.249-2.832 6.515-2.832s4.815 1.133 6.515 2.832l14.162 14.163c1.7 1.7 2.833 4.249 2.833 6.515z" /></svg></span></span></a> 873<ul class="sub-menu"> 874 <li id="menu-item-20121" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20121"><a href="https://www.cncsourced.com/category/guides/laser-guides/">Laser Guides</a></li> 875 <li id="menu-item-20597" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20597"><a href="https://www.cncsourced.com/category/rankings/laser-rankings/">Laser Rankings</a></li> 876 <li id="menu-item-20595" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20595"><a href="https://www.cncsourced.com/category/comparisons/laser-comparisons/">Laser Comparisons</a></li> 877 <li id="menu-item-20122" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20122"><a href="https://www.cncsourced.com/category/reviews/laser-cutter-reviews/">Laser Reviews</a></li> 878 <li id="menu-item-20596" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20596"><a href="https://www.cncsourced.com/category/projects/laser-plans/">Laser Projects & Plans</a></li> 879 <li id="menu-item-20120" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20120"><a href="https://www.cncsourced.com/category/laser-engravers/">Laser Engravers</a></li> 880 <li id="menu-item-20127" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20127"><a href="https://www.cncsourced.com/category/vinyl-cutters/">Vinyl Cutters</a></li> 881</ul> 882</li> 883<li id="menu-item-20123" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-20123"><a href="https://www.cncsourced.com/category/software/">Software<span role="presentation" class="dropdown-menu-toggle"><span class="gp-icon icon-arrow"><svg viewBox="0 0 330 512" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="1em" height="1em"><path d="M305.913 197.085c0 2.266-1.133 4.815-2.833 6.514L171.087 335.593c-1.7 1.7-4.249 2.832-6.515 2.832s-4.815-1.133-6.515-2.832L26.064 203.599c-1.7-1.7-2.832-4.248-2.832-6.514s1.132-4.816 2.832-6.515l14.162-14.163c1.7-1.699 3.966-2.832 6.515-2.832 2.266 0 4.815 1.133 6.515 2.832l111.316 111.317 111.316-111.317c1.7-1.699 4.249-2.832 6.515-2.832s4.815 1.133 6.515 2.832l14.162 14.163c1.7 1.7 2.833 4.249 2.833 6.515z" /></svg></span></span></a> 884<ul class="sub-menu"> 885 <li id="menu-item-20599" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20599"><a href="https://www.cncsourced.com/category/guides/software-guides/">Software Guides</a></li> 886 <li id="menu-item-20600" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20600"><a href="https://www.cncsourced.com/category/rankings/software-rankings/">Software Rankings</a></li> 887 <li id="menu-item-20598" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20598"><a href="https://www.cncsourced.com/category/comparisons/software-comparisons/">Software Comparisons</a></li> 888</ul> 889</li> 890<li id="menu-item-2049" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-ancestor current-menu-parent current_page_parent current_page_ancestor menu-item-has-children menu-item-2049"><a href="https://www.cncsourced.com/about-cncsourced/">About<span role="presentation" class="dropdown-menu-toggle"><span class="gp-icon icon-arrow"><svg viewBox="0 0 330 512" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="1em" height="1em"><path d="M305.913 197.085c0 2.266-1.133 4.815-2.833 6.514L171.087 335.593c-1.7 1.7-4.249 2.832-6.515 2.832s-4.815-1.133-6.515-2.832L26.064 203.599c-1.7-1.7-2.832-4.248-2.832-6.514s1.132-4.816 2.832-6.515l14.162-14.163c1.7-1.699 3.966-2.832 6.515-2.832 2.266 0 4.815 1.133 6.515 2.832l111.316 111.317 111.316-111.317c1.7-1.699 4.249-2.832 6.515-2.832s4.815 1.133 6.515 2.832l14.162 14.163c1.7 1.7 2.833 4.249 2.833 6.515z" /></svg></span></span></a> 891<ul class="sub-menu"> 892 <li id="menu-item-20328" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-20328"><a href="https://www.cncsourced.com/contact-us/">Contact Us</a></li> 893 <li id="menu-item-20327" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-15231 current_page_item menu-item-20327"><a href="https://www.cncsourced.com/how-we-do-product-reviews/" aria-current="page">Our Review Process</a></li> 894</ul> 895</li> 896</ul></div><div class="menu-bar-items"><span class="menu-bar-item search-item"><a aria-label="Open Search Bar" href="#">
896<span class="gp-icon icon-search"><svg viewBox="0 0 512 512" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="1em" height="1em"><path fill-rule="evenodd" clip-rule="evenodd" d="M208 48c-88.366 0-160 71.634-160 160s71.634 160 160 160 160-71.634 160-160S296.366 48 208 48zM0 208C0 93.125 93.125 0 208 0s208 93.125 208 208c0 48.741-16.765 93.566-44.843 129.024l133.826 134.018c9.366 9.379 9.355 24.575-.025 33.941-9.379 9.366-24.575 9.355-33.941-.025L337.238 370.987C301.747 399.167 256.839 416 208 416 93.125 416 0 322.875 0 208z" /></svg><svg viewBox="0 0 512 512" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="1em" height="1em"><path d="M71.029 71.029c9.373-9.372 24.569-9.372 33.942 0L256 222.059l151.029-151.03c9.373-9.372 24.569-9.372 33.942 0 9.372 9.373 9.372 24.569 0 33.942L289.941 256l151.03 151.029c9.372 9.373 9.372 24.569 0 33.942-9.373 9.372-24.569 9.372-33.942 0L256 289.941l-151.029 151.03c-9.373 9.372-24.569 9.372-33.942 0-9.372-9.373-9.372-24.569 0-33.942L222.059 256 71.029 104.971c-9.372-9.373-9.372-24.569 0-33.942z" /></svg></span></a></span></div> </div> 897 </nav> 898 </div> 899 </header> 900 <div class="gb-container gb-container-9d260f5e gb-container-m"><div class="gb-inside-container"> 901 902<h1 class="gb-headline gb-headline-7589df47 gb-headline-text">How We Do Product Reviews</h1> 903 904</div></div> 905 <div class="site grid-container container hfeed" id="page"> 906 <div class="site-content" id="content"> 907 908 <div class="content-area" id="primary"> 909 <main class="site-main" id="main"> 910 911<article id="post-15231" class="post-15231 page type-page status-publish" itemtype="https://schema.org/CreativeWork" itemscope> 912 <div class="inside-article"> 913 914 <div class="entry-content" itemprop="text"> 915 <div class="gb-container gb-container-f91f3787"> 916 917<p class="wp-block-paragraph">At CNCSourced, we take pride in our hands-on testing of the latest CNC routers and laser engravers that we review and recommend.</p> 918 919 920 921<p class="wp-block-paragraph">We enjoy discovering the lesser-known details that separate the top picks from the rest to find the best CNC router or laser engraver for your needs.</p> 922 923 924 925<h2 class="wp-block-heading">Examples of CNCSourced Hands-On Product Reviews</h2> 926 927 928 929<figure class="wp-block-image size-large"><img fetchpriority="high" decoding="async" width="1024" height="576" src="https://www.cncsourced.com/wp-content/uploads/2023/04/CNCSourced-How-we-test-products-page-CNC-routers-and-laser-reviews-1024x576.jpeg" alt="Some of the recent laser cutters and CNC routers we have tested on CNCSourced" class="wp-image-15238" srcset="https://www.cncsourced.com/wp-content/uploads/2023/04/CNCSourced-How-we-test-products-page-CNC-routers-and-laser-reviews-1024x576.jpeg 1024w, https://www.cncsourced.com/wp-content/uploads/2023/04/CNCSourced-How-we-test-products-page-CNC-routers-and-laser-reviews-300x169.jpeg 300w, https://www.cncsourced.com/wp-content/uploads/2023/04/CNCSourced-How-we-test-products-page-CNC-routers-and-laser-reviews-768x432.jpeg 768w, https://www.cncsourced.com/wp-content/uploads/2023/04/CNCSourced-How-we-test-products-page-CNC-routers-and-laser-reviews.jpeg 1280w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Here are some of the CNC routers and laser cutters we have recently tested.</figcaption></figure> 930 931 932 933<hr class="wp-block-separator has-alpha-channel-opacity is-style-dots"/> 934 935 936 937<p class="wp-block-paragraph">Here are a few recent CNCs and lasers we own and have tested:</p> 938 939 940 941<ul class="wp-block-list"> 942<li><a href="https://www.cncsourced.com/laser-cutters/xtool-d1-pro-20w-review/" target="_blank" rel="noopener" data-lasso-id="33400">xTool D1 Pro 20W version</a></li> 943 944 945 946<li><a href="https://www.cncsourced.com/laser-cutters/ortur-laser-master-3-review-test/" target="_blank" rel="noopener" data-lasso-id="33401">Ortur Laser Master 3</a></li> 947 948 949 950<li><a href="https://www.cncsourced.com/reviews/snapmaker-2-0-laser-cnc-review/" target="_blank" rel="noopener" data-lasso-id="33402">Snapmaker 2.0 CNC, laser and 3D printer</a></li> 951 952 953 954<li><a href="https://www.cncsourced.com/laser-cutters/two-trees-ts3-review-laser-test/" target="_blank" rel="noopener" data-lasso-id="33403">Two Trees TS3</a></li> 955 956 957 958<li><a href="https://www.cncsourced.com/laser-cutters/two-trees-tts-55-review-test/" target="_blank" rel="noopener" data-lasso-id="33404">Two Trees TTS-5.5</a></li> 959 960 961 962<li><a href="https://www.cncsourced.com/laser-engravers/longer-ray-5-review/" target="_blank" rel="noopener" data-lasso-id="33405">Longer Ray 5</a></li> 963 964 965 966<li><a href="https://www.cncsourced.com/reviews/ortur-laser-master-2-pro-review-specs-test/" target="_blank" rel="noopener" data-lasso-id="33406">Ortur Laser Master 2 Pro</a></li> 967 968 969 970<li><a href="https://www.cncsourced.com/reviews/ortur-laser-master-2-review-low-cost-cutter-engraver/" target="_blank" rel="noopener" data-lasso-id="33407">Ortur Laser Master 2</a></li> 971</ul> 972 973 974 975<h2 class="wp-block-heading">How We Evaluate Products</h2> 976 977 978 979<p class="wp-block-paragraph">While we consider more factors than these, here are some key factors we think about when testing CNC routers and laser engravers:</p> 980 981 982 983<ul class="wp-block-list"> 984<li><strong>Overall Build Quality and Reliability:</strong> we evaluate this both in terms of overall quality and relative quality – how good is it for the price? Is it a good value, and for whom? We would not recommend a CNC router or laser engraver that is not likely to be reliable in the long term.</li> 985 986 987 988<li><strong>Price & Value For Money:</strong> our goal is not only to recommend the best product for you, but also to
988save you the most money whenever possible. We consider which is the best value for your particular needs, not just which is the best â then itâs your choice with all the info to pick which works for you.</li> 989 990 991 992<li><strong>Upgradeability:</strong> we do not want to see a CNC router or laser cutter as a finished product. Some CNCs and lasers can have enclosures, rotary add-ons, air assists, dust shoes, and much more to improve them overall. Whenever possible, we try to provide recommendations for versatility and list the available upgrades.</li> 993 994 995 996<li><strong>Beginner-friendliness:</strong> at CNCSourced, we strive to make CNC routers and laser engravers as accessible as possible so that anyone who wants to get started can do so. Especially when reviewing products in the lower price ranges or those aimed at newer makers, we want to show exactly how easy (or difficult) it is to assemble, as well as the user-friendliness of the software, and how prone to issues it is.</li> 997</ul> 998 999 1000 1001<p class="wp-block-paragraph">That being said, we understand that everyone values different things and has different projects in mind. Therefore, we highlight specific use cases, pros, and cons for each machine we test so that you know exactly what you’re getting.</p> 1002 1003 1004 1005<h2 class="wp-block-heading">We Want Our Readers to be Satisfied</h2> 1006 1007 1008 1009<p class="wp-block-paragraph">At CNCSourced, we take the responsibility to give you the best recommendations possible very seriously. The following points outline our promises to you:</p> 1010 1011 1012 1013<h3 class="wp-block-heading">Our Promise of Integrity</h3> 1014 1015 1016 1017<p class="wp-block-paragraph">We openly disclose that our content and our team of writers are partly funded through affiliate earnings from our recommendations, and we acknowledge that this may create a conflict of interest.</p> 1018 1019 1020 1021<p class="wp-block-paragraph">Although we include affiliate links in some of our articles, this does not affect which products we recommend. We frequently recommend products that we do not earn from if you purchase them, and we will always recommend the best product, whether or not itâs an affiliate link.</p> 1022 1023 1024 1025<h3 class="wp-block-heading">Real Hands-On Reviews</h3> 1026 1027 1028 1029<p class="wp-block-paragraph">We believe that personal experience is critical when deciding which CNC router or laser engraver to purchase.</p> 1030 1031 1032 1033<p class="wp-block-paragraph">That is why we test the products ourselves.</p> 1034 1035 1036 1037<p class="wp-block-paragraph">We only want to give you our honest opinions and thoughts. We also take into account what other customers have to say and look for reviews from reliable sources to provide you with the least biased perspective.</p> 1038 1039 1040 1041<h3 class="wp-block-heading">Honesty: Good and Bad</h3> 1042 1043 1044 1045<p class="wp-block-paragraph">Finally, we are not afraid to tell the truth about a product and mention any negatives. Even if the manufacturer of the CNC router or laser engraver emails us to change the review (this has happened before).</p> 1046 1047 1048 1049<p class="wp-block-paragraph">We donât let companies pressure us into giving better ratings. We inform all manufacturers who send us products about our policy on reviewing products, and believe that it is crucial to provide you with a balanced view so that you can make the best decision for your needs.</p> 1050 1051</div><div class="sharedaddy sd-sharing-enabled"><div class="robots-nocontent sd-block sd-social sd-social-icon-text sd-sharing"><h3 class="sd-title">Share this:</h3><div class="sd-content"><ul><li class="share-facebook"><a rel="nofollow noopener noreferrer" 1052 data-shared="sharing-facebook-15231" 1053 class="share-facebook sd-button share-icon" 1054 href="https://www.cncsourced.com/how-we-do-product-reviews/?share=facebook" 1055 target="_blank" 1056 aria-labelledby="sharing-facebook-15231" 1057 > 1058 <span id="sharing-facebook-15231" hidden>Share on Facebook (Opens in new window)</span> 1059 <span>Facebook</span> 1060 </a></li><li class="share-x"><a rel="nofollow noopener noreferrer" 1061 data-shared="sharing-x-15231" 1062 class="share-x sd-button share-icon" 1063 href="https://www.cncsourced.com/how-we-do-product-reviews/?share=x" 1064 target="_blank" 1065 aria-labelledby="sharing-x-15231" 1066 > 1067 <span id="sharing-x-15231" hidden>Share on X (Opens in new window)</span> 1068 <span>X</span> 1069 </a></li><li class="share-end"></li></ul></div></div></div> </div> 1070 1071 </div> 1072</article> 1073 </main> 1074 </div> 1075 1076 1077 </div> 1078</div> 1079 1080 1081<div class="site-footer footer-bar-active footer-bar-align-right"> 1082 <div class="gb-container gb-container-7a6ad4d7"> 1083<div class="gb-container gb-container-cc54fb55"> 1084<div class="gb-container gb-container-0878dc19"> 1085<div class="gb-grid-wrapper gb-grid-wrapper-a2ecb7e4"> 1086<div class="gb-grid-column gb-grid-column-7f3e8d5b"><div class="gb-container gb-container-7f3e8d5b"> 1087 1088<figure class="gb-block-image gb-block-image-5c1b759e"><img loading="lazy" decoding="async" width="1600" height="500" class="gb-image gb-image-5c1b759e" src="https://www.cncsourced.com/wp-content/uploads/2022/03/CNC_TRANSPARENT.png" alt="" title="CNC_TRANSPARENT" srcset="https://www.cncsourced.com/wp-content/uploads/2022/03/CNC_TRANSPARENT.png 1600w, https://www.cncsourced.com/wp-content/uploads/2022/03/CNC_TRANSPARENT-300x94.png 300w, https://www.cncsourced.com/wp-content/uploads/2022/03/CNC_TRANSPARENT-1024x320.png 1024w, https://www.cncsourced.com/wp-content/uploads/2022/03/CNC_TRANSPARENT-768x240.png 768w, https://www.cncsourced.com/wp-content/uploads/2022/03/CNC_TRANSPARENT-1536x480.png 1536w" sizes="auto, (max-width: 1600px) 100v
1088w, 1600px" /></figure> 1089 1090 1091 1092<p class="has-text-align-left wp-block-paragraph" style="font-size:14px">The most informative CNC site on the web</p> 1093 1094 1095 1096<ul class="wp-block-social-links has-icon-color has-icon-background-color is-layout-flex wp-block-social-links-is-layout-flex"><li style="color:var(--text);background-color:var(--accent-1)" class="wp-social-link wp-social-link-facebook has-text-color has-accent-1-background-color wp-block-social-link"><a href="https://www.facebook.com/3dsourced/" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M12 2C6.5 2 2 6.5 2 12c0 5 3.7 9.1 8.4 9.9v-7H7.9V12h2.5V9.8c0-2.5 1.5-3.9 3.8-3.9 1.1 0 2.2.2 2.2.2v2.5h-1.3c-1.2 0-1.6.8-1.6 1.6V12h2.8l-.4 2.9h-2.3v7C18.3 21.1 22 17 22 12c0-5.5-4.5-10-10-10z"></path></svg><span class="wp-block-social-link-label screen-reader-text">Facebook</span></a></li> 1097 1098<li style="color:var(--text);background-color:var(--accent-1)" class="wp-social-link wp-social-link-twitter has-text-color has-accent-1-background-color wp-block-social-link"><a href="https://twitter.com/3dsourced" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M22.23,5.924c-0.736,0.326-1.527,0.547-2.357,0.646c0.847-0.508,1.498-1.312,1.804-2.27 c-0.793,0.47-1.671,0.812-2.606,0.996C18.324,4.498,17.257,4,16.077,4c-2.266,0-4.103,1.837-4.103,4.103 c0,0.322,0.036,0.635,0.106,0.935C8.67,8.867,5.647,7.234,3.623,4.751C3.27,5.357,3.067,6.062,3.067,6.814 c0,1.424,0.724,2.679,1.825,3.415c-0.673-0.021-1.305-0.206-1.859-0.513c0,0.017,0,0.034,0,0.052c0,1.988,1.414,3.647,3.292,4.023 c-0.344,0.094-0.707,0.144-1.081,0.144c-0.264,0-0.521-0.026-0.772-0.074c0.522,1.63,2.038,2.816,3.833,2.85 c-1.404,1.1-3.174,1.756-5.096,1.756c-0.331,0-0.658-0.019-0.979-0.057c1.816,1.164,3.973,1.843,6.29,1.843 c7.547,0,11.675-6.252,11.675-11.675c0-0.178-0.004-0.355-0.012-0.531C20.985,7.47,21.68,6.747,22.23,5.924z"></path></svg><span class="wp-block-social-link-label screen-reader-text">Twitter</span></a></li> 1099 1100<li style="color:var(--text);background-color:var(--accent-1)" class="wp-social-link wp-social-link-linkedin has-text-color has-accent-1-background-color wp-block-social-link"><a href="https://twitter.com/3dsourced" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M19.7,3H4.3C3.582,3,3,3.582,3,4.3v15.4C3,20.418,3.582,21,4.3,21h15.4c0.718,0,1.3-0.582,1.3-1.3V4.3 C21,3.582,20.418,3,19.7,3z M8.339,18.338H5.667v-8.59h2.672V18.338z M7.004,8.574c-0.857,0-1.549-0.694-1.549-1.548 c0-0.855,0.691-1.548,1.549-1.548c0.854,0,1.547,0.694,1.547,1.548C8.551,7.881,7.858,8.574,7.004,8.574z M18.339,18.338h-2.669 v-4.177c0-0.996-0.017-2.278-1.387-2.278c-1.389,0-1.601,1.086-1.601,2.206v4.249h-2.667v-8.59h2.559v1.174h0.037 c0.356-0.675,1.227-1.387,2.526-1.387c2.703,0,3.203,1.779,3.203,4.092V18.338z"></path></svg><span class="wp-block-social-link-label screen-reader-text">LinkedIn</span></a></li> 1101 1102<li style="color:var(--text);background-color:var(--accent-1)" class="wp-social-link wp-social-link-instagram has-text-color has-accent-1-background-color wp-block-social-link"><a href="https://www.instagram.com/3dsourced/" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M12,4.622c2.403,0,2.688,0.009,3.637,0.052c0.877,0.04,1.354,0.187,1.671,0.31c0.42,0.163,0.72,0.358,1.035,0.673 c0.315,0.315,0.51,0.615,0.673,1.035c0.123,0.317,0.27,0.794,0.31,1.671c0.043,0.949,0.052,1.234,0.052,3.637 s-0.009,2.688-0.052,3.637c-0.04,0.877-0.187,1.354-0.31,1.671c-0.163,0.42-0.358,0.72-0.673,1.035 c-0.315,0.315-0.615,0.51-1.035,0.673c-0.317,0.123-0.794,0.27-1.671,0.31c-0.949,0.043-1.233,0.052-3.637,0.052 s-2.688-0.009-3.637-0.052c-0.877-0.04-1.354-0.187-1.671-0.31c-0.42-0.163-0.72-0.358-1.035-0.673 c-0.315-0.315-0.51-0.615-0.673-1.035c-0.123-0.317-0.27-0.794-0.31-1.671C4.631,14.688,4.622,14.403,4.622,12 s0.009-2.688,0.052-3.637c0.04-0.877,0.187-1.354,0.31-1.671c0.163-0.42,0.358-0.72,0.673-1.035 c0.315-0.315,0.615-0.51,1.035-0.673c0.317-0.123,0.794-0.27,1.671-0.31C9.312,4.631,9.597,4.622,12,4.622 M12,3 C9.556,3,9.249,3.01,8.289,3.054C7.331,3.098,6.677,3.25,6.105,3.472C5.513,3.702,5.011,4.01,4.511,4.511 c-0.5,0.5-0.808,1.002-1.038,1.594C3.25,6.677,3.098,7.331,3.054,8.289C3.01,9.249,3,9.556,3,12c0,2.444,0.01,2.751,0.054,3.711 c0.044,0.958,0.196,1.612,0.418,2.185c0.23,0.592,0.538,1.094,1.038,1.594c0.5,0.5,1.002,0.808,1.594,1.038 c0.572,0.222,1.227,0.375,2.185,0.418C9.249,20.99,9.556,21,12,21s2.751-0.01,3.711-0.054c0.958-0.044,1.612-0.196,2.185-0.418 c0.592-0.23,1.094-0.538,1.594
1102-1.038c0.5-0.5,0.808-1.002,1.038-1.594c0.222-0.572,0.375-1.227,0.418-2.185 C20.99,14.751,21,14.444,21,12s-0.01-2.751-0.054-3.711c-0.044-0.958-0.196-1.612-0.418-2.185c-0.23-0.592-0.538-1.094-1.038-1.594 c-0.5-0.5-1.002-0.808-1.594-1.038c-0.572-0.222-1.227-0.375-2.185-0.418C14.751,3.01,14.444,3,12,3L12,3z M12,7.378 c-2.552,0-4.622,2.069-4.622,4.622S9.448,16.622,12,16.622s4.622-2.069,4.622-4.622S14.552,7.378,12,7.378z M12,15 c-1.657,0-3-1.343-3-3s1.343-3,3-3s3,1.343,3,3S13.657,15,12,15z M16.804,6.116c-0.596,0-1.08,0.484-1.08,1.08 s0.484,1.08,1.08,1.08c0.596,0,1.08-0.484,1.08-1.08S17.401,6.116,16.804,6.116z"></path></svg><span class="wp-block-social-link-label screen-reader-text">Instagram</span></a></li></ul> 1103 1104 1105 1106<p class="gb-headline gb-headline-6fe8175a"><span class="gb-icon"><svg aria-hidden="true" role="img" height="1em" width="1em" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M464 64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48zm0 48v40.805c-22.422 18.259-58.168 46.651-134.587 106.49-16.841 13.247-50.201 45.072-73.413 44.701-23.208.375-56.579-31.459-73.413-44.701C106.18 199.465 70.425 171.067 48 152.805V112h416zM48 400V214.398c22.914 18.251 55.409 43.862 104.938 82.646 21.857 17.205 60.134 55.186 103.062 54.955 42.717.231 80.509-37.199 103.053-54.947 49.528-38.783 82.032-64.401 104.947-82.653V400H48z"></path></svg></span><span class="gb-headline-text">[email protected]</span></p> 1107 1108</div></div> 1109 1110<div class="gb-grid-column gb-grid-column-6f8182dd"><div class="gb-container gb-container-6f8182dd"> 1111 1112<p class="gb-headline gb-headline-9f7bf752 gb-headline-text">Categories</p> 1113 1114 1115 1116<h2 class="gb-headline gb-headline-60fd2c6d gb-headline-text"><a href="https://www.cncsourced.com/category/cnc-routers/">CNC Routers</a><br><a href="https://www.cncsourced.com/category/cnc-machining/" data-type="link" data-id="https://www.cncsourced.com/category/cnc-machining/">CNC Machining</a><br><a href="https://www.cncsourced.com/category/laser-cutters/">Laser Cutters</a><br><a href="https://www.cncsourced.com/category/software/" data-type="link" data-id="https://www.cncsourced.com/category/software/">Software</a><br><a href="https://www.cncsourced.com/category/rankings/" data-type="link" data-id="https://www.cncsourced.com/category/rankings/">Rankings</a><br><a href="https://www.cncsourced.com/category/reviews/" data-type="link" data-id="https://www.cncsourced.com/category/reviews/">Reviews</a><br><a href="https://www.cncsourced.com/category/comparisons/" data-type="link" data-id="https://www.cncsourced.com/category/comparisons/">Comparisons</a><br><a href="https://www.cncsourced.com/category/guides/" data-type="link" data-id="https://www.cncsourced.com/category/guides/">Guides</a></h2> 1117 1118</div></div> 1119 1120<div class="gb-grid-column gb-grid-column-ce619b4d"><div class="gb-container gb-container-ce619b4d"> 1121 1122<p class="gb-headline gb-headline-01c4fcce gb-headline-text">Most Popular</p> 1123 1124 1125 1126<h2 class="gb-headline gb-headline-d79f451a gb-headline-text"><a href="https://www.cncsourced.com/rankings/best-laser-cutter-engraver/" data-type="link" data-id="https://www.cncsourced.com/rankings/best-laser-cutter-engraver/">Best Laser Cutters</a><br><a href="https://www.cncsourced.com/rankings/best-metal-cnc-machines-aluminum/" data-type="link" data-id="https://www.cncsourced.com/rankings/best-metal-cnc-machines-aluminum/">Best CNC Routers</a><br><a href="https://www.cncsourced.com/laser-engravers/cheap-laser-engraver-machines/" data-type="link" data-id="https://www.cncsourced.com/laser-engravers/cheap-laser-engraver-machines/">Best Cheap Laser Engravers</a><br><a href="https://www.cncsourced.com/rankings/glowforge-alternatives/" data-type="link" data-id="https://www.cncsourced.com/rankings/glowforge-alternatives/">Glowforge Alternatives</a><br><a href="https://www.cncsourced.com/laser-engravers/metal-laser-engravers-cutter/" data-type="link" data-id="https://www.cncsourced.com/laser-engravers/metal-laser-engravers-cutter/">Best Laser Engravers For Metal</a><br><a href="https://www.cncsourced.com/laser-cutters/co2-laser-cutter/" data-type="link" data-id="https://www.cncsourced.com/laser-cutters/co2-laser-cutter/">Best CO2 Laser Cutters</a><br><a href="https://www.cncsourced.com/rankings/best-cnc-mills-milling-machines/" data-type="link" data-id="https://www.cncsourced.com/rankings/best-cnc-mills-milling-machines/">Best CNC Mills</a><br><a href="https://www.cncsourced.com/cnc-machining/best-cnc-machines-for-small-business/" data-type="link" data-id="https://www.cncsourced.com/cnc-machining/best-cnc-machines-for-small-business/">Best CNC Machines For Small Business</a><br><a href="https://www.cncsourced.com/rankings/best-diy-cnc-routers/" data-type="link" data-id="https://www.cncsourced.com/rankings/best-diy-cnc-routers/">Best DIY CNC Routers</a><br><a href="https://www.cncsourced.com/cnc-machining/best-4x8-cnc-routers/">Best 4x8 CNC Routers</a></h2> 1127 1128</div></div> 1129 1130<div class="gb-grid-column gb-grid-column-5e262e81"><div class="gb-container gb-container-5e262e81"> 1131 1132<p class="gb-headline gb-headline-66c21157 gb-headline-text">Useful Links</p> 1133 1134 1135 1136<p class="gb-headline gb-headline-763a5ed8 gb-headline-text"><a href="https://www.cncsourced.com/about-cncsourced/" data-type="link" data-id="https://www.cncsourced.com/about-cncsourced/">About us</a><br><a href="#">About the team<br></a><a href="https://www.cncsourced.com/how-we-do-product-reviews/" data-type="link" data-id="https://www.cncsourced.com/how-we-do-product-reviews/">How we do our reviews</a><br><a href="https://www.cncsourced.com/careers/" data-type="page" data-id="23349">Careers</a><br><a href="https://www.cncsourced.com/contact-us/" data-type="link" data-id="https://www.cncsourced.com/contact-us/">Contact Us</a></p> 1137 1138</div></div> 1139 1140<div class="gb-grid-column gb-grid-column-ddf83eb6"><div class="gb-container gb-container-ddf83eb6"> 1141 1142<p class="gb-headline gb-headline-608316b3 gb-headline-text">Sign up to our newsletter</p> 1143 1144 1145<div class="gb-container gb-container-dce2ef62"> 1146 <div class="ml-embedded" data-form="Al0qWb"></div> 1147 1148 1149</div> 1150</div></div> 1151</div> 1152</div> 1153</div> 1154 1155<div class="gb-container gb-container-41ae1b04"> 1156<div class="gb-container gb-container-c61149ac"> 1157 1158<p class="gb-headline gb-headline-92bdd11d gb-headline-text"><a href="https://www.cncsourced.com/privacy-policy/" data-type="link" data-id="https://www.cncsourced.com/privacy-policy/">Privacy policy</a></p> 1159 1160 1161 1162<p class="gb-headline gb-headline-6b0242e5 gb-headline-text"><a href="https://www.cncsourced.com/terms-and-conditions/" data-type="link" data-id="https://www.cncsourced.com/terms-and-conditions/">Terms and conditions</a></p> 1163 1164 1165 1166<p class="gb-headline gb-headline-2b0de607 gb-headline-text"><a href="https://www.cncsourced.com/affiliate-disclaimer/" data-type="link" data-id="https://www.cncsourced.com/affiliate-disclaimer/">Affiliate disclaimer</a></p> 1167 1168 1169 1170<p class="gb-headline gb-headline-9b7cb6c8 gb-headline-text"><a href="#" data-type="page" data-id="39253">Cookie policy</a></p> 1171 1172 1173 1174<p class="gb-headline gb-headline-44df8afa gb-headline-text"><a href="#" data-type="page" data-id="39255">GDPR policy</a></p> 1175 1176 1177 1178<p class="gb-headline gb-headline-2f2a4a79 gb-headline-text"><a href="#" data-type="page" data-id="39258">Modern slavery statement</a></p> 1179 1180 1181 1182<p class="gb-headline gb-headline-ae5f3666 gb-headline-text"><a href="#" data-type="page" data-id="39260">Accessibility</a></p> 1183 1184 1185 1186<p class="gb-headline gb-headline-f7549c9c gb-headline-text"><a href="#" data-type="page" data-id="39262">Disclaimer</a></p> 1187 1188 1189 1190<p class="gb-headline gb-headline-fd9f285b gb-headline-text"><a href="#" data-type="page" data-id="39264">Complaints policy</a></p> 1191 1192 1193 1194<p class="gb-headline gb-headline-c359bd3d gb-headline-text"><a href="#" data-type="page" data-id="39267">Code of ethics</a></p> 1195 1196 1197 1198<p class="gb-headline gb-headline-6683ee30 gb-headline-text"><a href="#" data-type="page" data-id="39269">EDI policy</a></p> 1199 1200 1201 1202<p class="gb-headline gb-headline-6b2e5dbf gb-headline-text"><a href="#" data-type="page" data-id="39274">Editorial policy</a></p> 1203 1204</div> 1205</div> 1206</div></div> 1207 1208 <nav id="generate-slideout-menu" class="main-navigation slideout-navigation" itemtype="https://schema.org/SiteNavigationElement" itemscope> 1209 <div class="inside-navigation grid-container grid-parent"> 1210 <div class="gb-container gb-container-cf5178e1"><div class="gb-inside-container"> 1211<div class="is-default-size wp-block-site-logo"><a href="https://www.cncsourced.com/" class="custom-logo-link" rel="home"><img loading="lazy" width="1600" height="500" src="https://www.cncsourced.com/wp-content/uploads/2022/03/CNC_TRANSPARENT.png" class="custom-logo" alt="CNCSourced" decoding="async" srcset="https://www.cncsourced.com/wp-content/uploads/2022/03/CNC_TRANSPARENT.png 1600w, https://www.cncsourced.com/wp-content/uploads/2022/03/CNC_TRANSPARENT-300x94.png 300w, https://www.cncsourced.com/wp-content/uploads/2022/03/CNC_TRANSPARENT-1024x320.png 1024w, https://www.cncsourced.com/wp-content/uploads/2022/03/CNC_TRANSPARENT-768x240.png 768w, https://www.cncsourced.com/wp-content/uploads/2022/03/CNC_TRANSPARENT-1536x480.png 1536w" sizes="auto, (max-width: 1600px) 100v
1211w, 1600px" /></a></div> 1212</div></div><div class="main-nav"><ul id="menu-main-menu-1" class=" slideout-menu"><li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-20590"><a href="#">CNC<span role="presentation" class="dropdown-menu-toggle"><span class="gp-icon icon-arrow"><svg viewBox="0 0 330 512" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="1em" height="1em"><path d="M305.913 197.085c0 2.266-1.133 4.815-2.833 6.514L171.087 335.593c-1.7 1.7-4.249 2.832-6.515 2.832s-4.815-1.133-6.515-2.832L26.064 203.599c-1.7-1.7-2.832-4.248-2.832-6.514s1.132-4.816 2.832-6.515l14.162-14.163c1.7-1.699 3.966-2.832 6.515-2.832 2.266 0 4.815 1.133 6.515 2.832l111.316 111.317 111.316-111.317c1.7-1.699 4.249-2.832 6.515-2.832s4.815 1.133 6.515 2.832l14.162 14.163c1.7 1.7 2.833 4.249 2.833 6.515z" /></svg></span></span></a> 1213<ul class="sub-menu"> 1214 <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20118"><a href="https://www.cncsourced.com/category/guides/cnc-guides/">CNC Guides</a></li> 1215 <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20594"><a href="https://www.cncsourced.com/category/rankings/cnc-rankings/">CNC Rankings</a></li> 1216 <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20592"><a href="https://www.cncsourced.com/category/comparisons/cnc-comparisons/">CNC Comparisons</a></li> 1217 <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20119"><a href="https://www.cncsourced.com/category/reviews/cnc-reviews/">CNC Reviews</a></li> 1218 <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20593"><a href="https://www.cncsourced.com/category/projects/cnc-plans/">CNC Projects & Plans</a></li> 1219 <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-4720"><a href="https://www.cncsourced.com/category/cnc-routers/">CNC Routers</a></li> 1220 <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20591"><a href="https://www.cncsourced.com/category/cnc-machining/">CNC Machining</a></li> 1221</ul> 1222</li> 1223<li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-4721"><a href="https://www.cncsourced.com/category/laser-cutters/">Laser Cutters<span role="presentation" class="dropdown-menu-toggle"><span class="gp-icon icon-arrow"><svg viewBox="0 0 330 512" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="1em" height="1em"><path d="M305.913 197.085c0 2.266-1.133 4.815-2.833 6.514L171.087 335.593c-1.7 1.7-4.249 2.832-6.515 2.832s-4.815-1.133-6.515-2.832L26.064 203.599c-1.7-1.7-2.832-4.248-2.832-6.514s1.132-4.816 2.832-6.515l14.162-14.163c1.7-1.699 3.966-2.832 6.515-2.832 2.266 0 4.815 1.133 6.515 2.832l111.316 111.317 111.316-111.317c1.7-1.699 4.249-2.832 6.515-2.832s4.815 1.133 6.515 2.832l14.162 14.163c1.7 1.7 2.833 4.249 2.833 6.515z" /></svg></span></span></a> 1224<ul class="sub-menu"> 1225 <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20121"><a href="https://www.cncsourced.com/category/guides/laser-guides/">Laser Guides</a></li> 1226 <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20597"><a href="https://www.cncsourced.com/category/rankings/laser-rankings/">Laser Rankings</a></li> 1227 <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20595"><a href="https://www.cncsourced.com/category/comparisons/laser-comparisons/">Laser Comparisons</a></li> 1228 <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20122"><a href="https://www.cncsourced.com/category/reviews/laser-cutter-reviews/">Laser Reviews</a></li> 1229 <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20596"><a href="https://www.cncsourced.com/category/projects/laser-plans/">Laser Projects & Plans</a></li> 1230 <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20120"><a href="https://www.cncsourced.com/category/laser-engravers/">Laser Engravers</a></li> 1231 <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20127"><a href="https://www.cncsourced.com/category/vinyl-cutters/">Vinyl Cutters</a></li> 1232</ul> 1233</li> 1234<li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-20123"><a href="https://www.cncsourced.com/category/software/">Software<span role="presentation" class="dropdown-menu-toggle">
1234<span class="gp-icon icon-arrow"><svg viewBox="0 0 330 512" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="1em" height="1em"><path d="M305.913 197.085c0 2.266-1.133 4.815-2.833 6.514L171.087 335.593c-1.7 1.7-4.249 2.832-6.515 2.832s-4.815-1.133-6.515-2.832L26.064 203.599c-1.7-1.7-2.832-4.248-2.832-6.514s1.132-4.816 2.832-6.515l14.162-14.163c1.7-1.699 3.966-2.832 6.515-2.832 2.266 0 4.815 1.133 6.515 2.832l111.316 111.317 111.316-111.317c1.7-1.699 4.249-2.832 6.515-2.832s4.815 1.133 6.515 2.832l14.162 14.163c1.7 1.7 2.833 4.249 2.833 6.515z" /></svg></span></span></a> 1235<ul class="sub-menu"> 1236 <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20599"><a href="https://www.cncsourced.com/category/guides/software-guides/">Software Guides</a></li> 1237 <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20600"><a href="https://www.cncsourced.com/category/rankings/software-rankings/">Software Rankings</a></li> 1238 <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-20598"><a href="https://www.cncsourced.com/category/comparisons/software-comparisons/">Software Comparisons</a></li> 1239</ul> 1240</li> 1241<li class="menu-item menu-item-type-post_type menu-item-object-page current-menu-ancestor current-menu-parent current_page_parent current_page_ancestor menu-item-has-children menu-item-2049"><a href="https://www.cncsourced.com/about-cncsourced/">About<span role="presentation" class="dropdown-menu-toggle"><span class="gp-icon icon-arrow"><svg viewBox="0 0 330 512" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="1em" height="1em"><path d="M305.913 197.085c0 2.266-1.133 4.815-2.833 6.514L171.087 335.593c-1.7 1.7-4.249 2.832-6.515 2.832s-4.815-1.133-6.515-2.832L26.064 203.599c-1.7-1.7-2.832-4.248-2.832-6.514s1.132-4.816 2.832-6.515l14.162-14.163c1.7-1.699 3.966-2.832 6.515-2.832 2.266 0 4.815 1.133 6.515 2.832l111.316 111.317 111.316-111.317c1.7-1.699 4.249-2.832 6.515-2.832s4.815 1.133 6.515 2.832l14.162 14.163c1.7 1.7 2.833 4.249 2.833 6.515z" /></svg></span></span></a> 1242<ul class="sub-menu"> 1243 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-20328"><a href="https://www.cncsourced.com/contact-us/">Contact Us</a></li> 1244 <li class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-15231 current_page_item menu-item-20327"><a href="https://www.cncsourced.com/how-we-do-product-reviews/" aria-current="page">Our Review Process</a></li> 1245</ul> 1246</li> 1247</ul></div> </div><!-- .inside-navigation --> 1248 </nav><!-- #site-navigation --> 1249 1250 <div class="slideout-overlay"> 1251 <button class="slideout-exit has-svg-icon"> 1252 <span class="gp-icon pro-close"> 1253 <svg viewBox="0 0 512 512" aria-hidden="true" role="img" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1em" height="1em"> 1254 <path d="M71.029 71.029c9.373-9.372 24.569-9.372 33.942 0L256 222.059l151.029-151.03c9.373-9.372 24.569-9.372 33.942 0 9.372 9.373 9.372 24.569 0 33.942L289.941 256l151.03 151.029c9.372 9.373 9.372 24.569 0 33.942-9.373 9.372-24.569 9.372-33.942 0L256 289.941l-151.029 151.03c-9.373 9.372-24.569 9.372-33.942 0-9.372-9.373-9.372-24.569 0-33.942L222.059 256 71.029 104.971c-9.372-9.373-9.372-24.569 0-33.942z" /> 1255 </svg> 1256 </span> <span class="screen-reader-text">Close</span> 1257 </button> 1258 </div> 1259
1259<script data-no-optimize='1' data-cfasync='false' id='cls-insertion-8e1d4c3'>(function(){window.adthriveCLS.buildDate=`2026-10-01`;let e={Below_Post_1:`Below_Post_1`,Below_Post:`Below_Post`,Content:`Content`,Content_1:`Content_1`,Content_2:`Content_2`,Content_3:`Content_3`,Content_4:`Content_4`,Content_5:`Content_5`,Content_6:`Content_6`,Content_7:`Content_7`,Content_8:`Content_8`,Content_9:`Content_9`,Recipe:`Recipe`,Recipe_1:`Recipe_1`,Recipe_2:`Recipe_2`,Recipe_3:`Recipe_3`,Recipe_4:`Recipe_4`,Recipe_5:`Recipe_5`,Native_Recipe:`Native_Recipe`,Footer_1:`Footer_1`,Footer:`Footer`,Header_1:`Header_1`,Header_2:`Header_2`,Header:`Header`,Sidebar_1:`Sidebar_1`,Sidebar_2:`Sidebar_2`,Sidebar_3:`Sidebar_3`,Sidebar_4:`Sidebar_4`,Sidebar_5:`Sidebar_5`,Sidebar_9:`Sidebar_9`,Sidebar:`Sidebar`,Interstitial_1:`Interstitial_1`,Interstitial:`Interstitial`,Video_StickyOutstream_1:`Video_StickyOutstream_1`,Video_StickyOutstream:`Video_StickyOutstream`,Video_StickyInstream:`Video_StickyInstream`,Sponsor_Tile:`Sponsor_Tile`},t=[`siteId`,`siteName`,`adOptions`,`breakpoints`,`adUnits`],n=(e,n=t)=>{if(!e)return window.adthriveCLS&&(window.adthriveCLS.disabled=!0),!1;for(let t=0;t<n.length;t++)if(!e[n[t]])return window.adthriveCLS&&(window.adthriveCLS.disabled=!0),!1;return!0},r=()=>window.adthriveCLS;function i(e){"@babel/helpers - typeof";return i=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},i(e)}function a(e,t){if(i(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(i(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function o(e){var t=a(e,`string`);return i(t)==`symbol`?t:t+``}function s(e,t,n){return(t=o(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var c=class{constructor(){s(this,`_clsGlobalData`,r())}get enabled(){return!!this._clsGlobalData&&!!this._clsGlobalData.siteAds&&n(this._clsGlobalData.siteAds)}get error(){return!!(this._clsGlobalData&&this._clsGlobalData.error)}set siteAds(e){this._clsGlobalData.siteAds=e}get siteAds(){return this._clsGlobalData.siteAds}set disableAds(e){this._clsGlobalData.disableAds=e}get disableAds(){return this._clsGlobalData.disableAds}get enabledLocations(){return[e.Below_Post,e.Content,e.Recipe,e.Sidebar]}get injectedFromPlugin(){return this._clsGlobalData.injectedFromPlugin}set injectedFromPlugin(e){this._clsGlobalData.injectedFromPlugin=e}get injectedFromSiteAds(){return this._clsGlobalData.injectedFromSiteAds}set injectedFromSiteAds(e){this._clsGlobalData.injectedFromSiteAds=e}setInjectedSlots(e){this._clsGlobalData.injectedSlots=this._clsGlobalData.injectedSlots||[],this._clsGlobalData.injectedSlots.push(e)}get injectedSlots(){return this._clsGlobalData.injectedSlots}setInjectedVideoSlots(e){this._clsGlobalData.injectedVideoSlots=this._clsGlobalData.injectedVideoSlots||[],this._clsGlobalData.injectedVideoSlots.push(e)}get injectedVideoSlots(){return this._clsGlobalData.injectedVideoSlots}setExperiment(e,t,n=!1){this._clsGlobalData.experiments=this._clsGlobalData.experiments||{},this._clsGlobalData.siteExperiments=this._clsGlobalData.siteExperiments||{};let r=n?this._clsGlobalData.siteExperiments:this._clsGlobalData.experiments;r[e]=t}getExperiment(e,t=!1){let n=t?this._clsGlobalData.siteExperiments:this._clsGlobalData.experiments;return n&&n[e]}setWeightedChoiceExperiment(e,t,n=!1){this._clsGlobalData.experimentsWeightedChoice=this._clsGlobalData.experimentsWeightedChoice||{},this._clsGlobalData.siteExperimentsWeightedChoice=this._clsGlobalData.siteExperimentsWeightedChoice||{};let r=n?this._clsGlobalData.siteExperimentsWeightedChoice:this._clsGlobalData.experimentsWeightedChoice;r[e]=t}getWeightedChoiceExperiment(e,t=!1){var n,r;let i=t?(n=this._clsGlobalData)==null?void 0:n.siteExperimentsWeightedChoice:(r=this._clsGlobalData)==null?void 0:r.experimentsWeightedChoice;return i&&i[e]}get bucket(){return this._clsGlobalData.bucket}set videoDisabledFromPlugin(e){this._clsGlobalData.videoDisabledFromPlugin=e}get videoDisabledFromPlugin(){return this._clsGlobalData.videoDisabledFromPlugin}set targetDensityLog(e){this._clsGlobalData.targetDensityLog=e}get targetDensityLog(){return this._clsGlobalData.targetDensityLog}get removeVideoTitleWrapper(){return this._clsGlobalData.siteAds.adOptions.removeVideoTitleWrapper}},l=class{},u=class extends l{constructor(e,t=Math.random){super(),this._probability=e,this._random=t}get(){if(this._probability<0||this._probability>1)throw Error(`Invalid probability: ${this._probability}`);return this._random()<this._probability}},d=class{constructor(){s(this,`_featureRollouts`,{}),s(this,`_checkedFeatureRollouts`,new Map),s(this,`_enabledFeatureRolloutIds`,[])}get siteFeatureRollouts(){return this._featureRollouts}_isRolloutEnabled(e){if(this._doesRolloutExist(e)){let t=this._featureRollouts[e],n=t.enabled,r=t.data;if(this._doesRolloutHaveConfig(e)&&this._isFeatureRolloutConfigType(r)){let e=(r.pct_enabled??100)/100;n&&=new u(e).get()}return n}return!1}isRolloutEnabled(e){let t=this._checkedFeatureRollouts.get(e)??this._isRolloutEnabled(e);return this._checkedFeatureRollouts.get(e)===void 0&&this._checkedFeatureRollouts.set(e,t),t}isRolloutAdministrativelyEnabled(e){return this._doesRolloutExist(e)&&this._featureRollouts[e].enabled}_doesRolloutExist(e){return this._featureRollouts&&!!this._featureRollouts[e]}_doesRolloutHaveConfig(e){return this._doesRolloutExist(e)&&`data`in this._featureRollouts[e]}_isFeatureRolloutConfigType(e){return typeof e==`object`&&!!e&&!!Object.keys(e).length}getSiteRolloutConfig(e){var t;let n=this.isRolloutEnabled(e),r=(t=this._featureRollouts[e])==null?void 0:t.data;return n&&this._doesRolloutHaveConfig(e)&&this._isFeatureRolloutConfigType(r)?r:{}}get enabledFeatureRolloutIds(){return this._enabledFeatureRolloutIds}},f=class extends d{constructor(e){super(),this._featureRollouts=e,this._setEnabledFeatureRolloutIds()}_setEnabledFeatureRolloutIds(){Object.entries(this._featureRollouts).forEac
1259h(([e,t])=>{this.isRolloutEnabled(e)&&t.featureRolloutId!==void 0&&this._enabledFeatureRolloutIds.push(t.featureRolloutId)})}},p,m;let h=(p=window.adthrive)==null||(p=p.siteAds)==null?void 0:p.featureRollouts,g=(m=window.adthriveCLS)==null||(m=m.siteAds)==null?void 0:m.featureRollouts,_=e=>!!e&&typeof e==`object`&&Object.keys(e).length>0,v=new f(_(g)&&g||_(h)&&h||{}),y=new f(window.adthrive&&window.adthrive.siteAds&&`featureRollouts`in window.adthrive.siteAds?window.adthrive.siteAds.featureRollouts??{}:{}),b=e=>e.indexOf(`hbs-q`)===0,ee=({bucket:e,isRolloutEnabled:t}={})=>{var n;let r=e??((n=window.adthrive)==null?void 0:n.bucket);return!(t??y.isRolloutEnabled.bind(y))(`enable-sticky-related`)||b(r||``)},x=e=>{let t={};return function(...n){let r=JSON.stringify(n);if(r in t)return t[r];let i=e.apply(this,n);return t[r]=i,i}};navigator.vendor;let S=navigator.userAgent,C=x(e=>/Chrom|Applechromium/.test(e||S)),te=x(()=>/WebKit/.test(S)),ne=x(()=>C()?`chromium`:te()?`webkit`:`other`),re=e=>/(Windows NT|Macintosh|X11;[^)]*(Linux|CrOS))/i.test(e),ie=e=>/Mobi|iP(hone|od)|Opera Mini/i.test(e),ae=e=>!/iPhone/i.test(e)&&/Mac/i.test(e)&&`ontouchstart`in window,w=e=>/Tablet|iPad|Playbook|Nook|webOS|Kindle|Android (?!.*Mobile).*Safari/i.test(e)||ae(e),T=x((e=S)=>w(e)?`tablet`:ie(e)&&!w(e)?`mobile`:re(e)?`desktop`:`tablet`),oe={desktop:`desktop`,tablet:`tablet`,phone:`mobile`},se=e=>e===`mobile`?`phone`:e,ce=()=>{var e;let t=((e=window)==null?void 0:e.adthrive)&&`deviceType`in window.adthrive&&window.adthrive.deviceType||null;return t&&Object.values(oe).includes(t)?t:null},le=x((e,t)=>{let n=T(e),r=t??n;return se(r===`tablet`&&n!==r?n:r)}),E=(e=navigator.userAgent)=>le(e,ce()),D=(e=navigator.userAgent)=>E(e)===`phone`;var ue,O=class{static _scheduleViewportUpdate(){this._rafId===null&&(this._rafId=window.requestAnimationFrame(()=>{this._rafId=null,this._updateViewportRects()}))}static _updateViewportRects(){if(this._trackedElements.size===0){this._detachViewportListeners();return}let e=[];this._trackedElements.forEach(t=>{if(!t.isConnected){e.push(t);return}this._cachedRects.set(t,t.getBoundingClientRect())}),e.forEach(e=>{this._trackedElements.delete(e),this._cachedRects.delete(e)}),this._trackedElements.size===0&&this._detachViewportListeners()}static _attachViewportListeners(){this._listenersAttached||=(window.addEventListener(`scroll`,this._viewportListener,{passive:!0}),window.addEventListener(`resize`,this._viewportListener),!0)}static _detachViewportListeners(){this._listenersAttached&&=(window.removeEventListener(`scroll`,this._viewportListener),window.removeEventListener(`resize`,this._viewportListener),!1)}static trackViewportElement(e){e&&(this._trackedElements.has(e)||(this._trackedElements.add(e),this._attachViewportListeners(),this._scheduleViewportUpdate()))}static untrackViewportElement(e){e&&(this._trackedElements.delete(e),this._cachedRects.delete(e),this._trackedElements.size===0&&this._detachViewportListeners())}static getCachedRect(e){return this._cachedRects.get(e)}static getScrollTop(){return(window.pageYOffset||document.documentElement.scrollTop)-(document.documentElement.clientTop||0)}static getScrollBottom(){let e=window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight||0;return this.getScrollTop()+e}static shufflePlaylist(e){let t=e.length,n,r;for(;t!==0;)r=Math.floor(Math.random()*e.length),--t,n=e[t],e[t]=e[r],e[r]=n;return e}static isMobileLandscape(){return window.matchMedia(`(orientation: landscape) and (max-height: 480px)`).matches}static playerViewable(e){let t=this._cachedRects.get(e)??e.getBoundingClientRect();return this.playerViewableFromRect(t)}static playerViewableFromRect(e){return this.isMobileLandscape()?window.innerHeight>e.top+e.height/2&&e.top+e.height/2>0:window.innerHeight>e.top+e.height/2}static createQueryString(e){return Object.keys(e).map(t=>`${t}=${e[t]}`).join(`&`)}static createEncodedQueryString(e){return Object.keys(e).map(t=>`${t}=${encodeURIComponent(e[t])}`).join(`&`)}static setMobileLocation(e,t=!1){e||=`bottom-right`;let n=t?`raptive-player-sticky`:`adthrive-collapse`;return e===`top-left`?e=`${n}-top-left`:e===`top-right`?e=`${n}-top-right`:e===`bottom-left`?e=`${n}-bottom-left`:e===`bottom-right`?e=`${n}-bottom-right`:e===`top-center`&&(e=`adthrive-collapse-${D()?`top-center`:`bottom-right`}`),e}static addMaxResolutionQueryParam(e){let t=`max_resolution=${D()?`320`:`1280`}`,[n,r]=String(e).split(`?`);return`${n}?${r?r+`&${t}`:t}`}};ue=O,s(O,`_trackedElements`,new Set),s(O,`_cachedRects`,new WeakMap),s(O,`_rafId`,null),s(O,`_listenersAttached`,!1),s(O,`_viewportListener`,()=>{ue._scheduleViewportUpdate()});let k=(e,t)=>e==null||e!==e?t:e;var de=class{constructor(e){this._clsOptions=e,s(this,`relatedSettings`,void 0),s(this,`players`,void 0),s(this,`removeVideoTitleWrapper`,void 0),s(this,`footerSelector`,void 0),s(this,`shouldDisableStickyRelated`,void 0),this.removeVideoTitleWrapper=k(this._clsOptions.siteAds.adOptions.removeVideoTitleWrapper,!1),this.shouldDisableStickyRelated=ee({bucket:this._clsOptions.bucket,isRolloutEnabled:v.isRolloutEnabled.bind(v)});let t=this._clsOptions.siteAds.videoPlayers;this.footerSelector=k(t&&t.footerSelector,``),this.players=k(t&&t.players.map(e=>(e.mobileLocation=O.setMobileLocation(e.mobileLocation),e)),[]),this.relatedSettings=t&&t.contextual}},fe=class{constructor(e){s(this,`mobileStickyPlayerOnPage`,!1),s(this,`collapsiblePlayerOnPage`,!1),s(this,`playlistPlayerAdded`,!1),s(this,`relatedPlayerAdded`,!1),s(this,`collapseSettings`,void 0),s(this,`footerSelector`,``),s(this,`removeVideoTitleWrapper`,!1),s(this,`desktopCollapseSettings`,void 0),s(this,`mobileCollapseSettings`,void 0),s(this,`relatedSettings`,void 0),s(this,`playerId`,void 0),s(this,`playlistId`,void 0),s(this,`desktopRelatedCollapseSettings`,void 0),s(this,`mobileRelatedCollapseSettings`,void 0),s(this,`collapsePlayerId`,void 0),s(this,`players`,void 0),s(this,`videoAdOptions`,void 0),s(this,`shouldDisableStickyRelated`,void 0),this.videoAdOptions=new de(e),this.players=this.videoAdOptions.players,this.relatedSettings=this.videoAdOptions.relatedSettings,this.removeVideoTitleWrapper=this.videoAdOptions.removeVideoTitleWrapper,this.footerSelector=this.videoAdOptions.footerSelector,this.shouldDisableStickyRelated=this.videoAdOptions.shouldDisableStickyRelated}};
1259let pe=[[300,50],[300,90],[320,50],[320,100]],A=(t,n)=>t===e.Recipe&&n===`phone`,me=([e,t])=>pe.some(([n,r])=>n===e&&r===t),he=e=>{let t=e.clientWidth;if(getComputedStyle){let n=getComputedStyle(e,null);t-=parseFloat(n.paddingLeft||`0`)+parseFloat(n.paddingRight||`0`)}return t},ge=()=>document.createDocumentFragment().querySelectorAll(`*`),j=(e,t=document)=>{try{return{valid:!0,elements:t.querySelectorAll(e)}}catch(e){return{valid:!1,elements:ge(),error:e}}},M=(e,t=document)=>{try{return{valid:!0,element:t.querySelector(e)}}catch(e){return{valid:!1,element:null,error:e}}},N=e=>j(e),P=e=>{if(e===``)return{valid:!0};let t=N(e);return t.valid?{valid:!0,elements:t.elements}:{valid:!1,error:t.error}},F=new class{info(e,t,...n){this.call(console.info,e,t,...n)}warn(e,t,...n){this.call(console.warn,e,t,...n)}error(e,t,...n){this.call(console.error,e,t,...n),this.sendErrorLogToCommandQueue(e,t,...n)}event(e,t,...n){var r;((r=window.adthriveCLS)==null?void 0:r.bucket)===`debug`&&this.info(e,t)}sendErrorLogToCommandQueue(e,t,...n){window.adthrive=window.adthrive||{},window.adthrive.cmd=window.adthrive.cmd||[],window.adthrive.cmd.push(()=>{window.adthrive.logError!==void 0&&typeof window.adthrive.logError==`function`&&window.adthrive.logError(e,t,n)})}call(e,t,n,...r){let i=[`%c${t}::${n} `],a=[`color: #999; font-weight: bold;`];r.length>0&&typeof r[0]==`string`&&i.push(r.shift()),a.push(...r);try{Function.prototype.apply.call(e,console,[i.join(``),...a])}catch(e){console.error(e);return}}},_e=[[728,90],[300,250],[300,600],[320,50],[970,250],[160,600],[300,1050],[336,280],[970,90],[300,50],[300,90],[320,100],[468,60],[250,250],[120,240],[1,1],[300,300],[300,420],[728,250],[320,300],[300,390]],ve=new Map([[e.Footer,1],[e.Header,2],[e.Sidebar,3],[e.Content,4],[e.Recipe,5],[`Sidebar_sticky`,6],[`Below Post`,7]]),ye=e=>_e.filter(([t,n])=>e.some(([e,r])=>t===e&&n===r)),be=(t,[n,r],i)=>{let{location:a,sequence:o}=t;if(a===e.Footer)return!(i===`phone`&&n===320&&r===100);if(a===e.Header)return!0;if(a===e.Recipe)return!(D()&&i===`phone`&&(n===300&&r===390||n===320&&r===300));if(a===e.Sidebar){let e=t.adSizes.some(([,e])=>e<=300),n=!!o&&o<=5,i=r>300;return i&&!e||o===9?!0:n?i?t.sticky:!0:!i}else return!0},xe=(t,n)=>{let{location:r,sticky:i}=t;if(r===e.Recipe&&n){let{recipeMobile:e,recipeDesktop:t}=n;if(D()&&e!=null&&e.enabled||!D()&&t!=null&&t.enabled)return!0}return r===e.Footer||i},Se=(e,t)=>{var n;let i=(n=r())==null?void 0:n.experiments;return i!==void 0&&Object.prototype.hasOwnProperty.call(i,`smra1`)&&i.smra1===!0&&D()&&A(e,t)},Ce=(t,n)=>{let r=n.adUnits,i=v.isRolloutEnabled(`enable-250px-max-ad-height`);return r.filter(e=>e.dynamic!==void 0&&e.dynamic.enabled).map(r=>{let a=r.location.replace(/\s+/g,`_`),o=a===`Sidebar`?0:2;a===e.Content&&i&&C()&&(r.adSizes=r.adSizes.filter(e=>e[1]<=250));let s=Se(a,t),c=[];for(let e of k(r.targeting,[])){let t=e;t.key===`special`&&c.push(...t.value)}let l=ye(r.adSizes).filter(e=>be(r,e,t)&&(s?me(e):!(e[0]===300&&e[1]===90)));return{auctionPriority:ve.get(a)||8,location:a,sequence:k(r.sequence,1),thirdPartyAdUnitName:r.thirdPartyAdUnitName||``,customGamTargeting:r.customGamTargeting||{},sizes:l,devices:r.devices,pageSelector:k(r.dynamic.pageSelector,``).trim(),elementSelector:k(r.dynamic.elementSelector,``).trim(),position:k(r.dynamic.position,`beforebegin`),max:Math.floor(k(r.dynamic.max,0)),spacing:k(r.dynamic.spacing,0),skip:Math.floor(k(r.dynamic.skip,0)),every:Math.max(Math.floor(k(r.dynamic.every,1)),1),classNames:r.dynamic.classNames||[],sticky:xe(r,n.adOptions.stickyContainerConfig),stickyOverlapSelector:k(r.stickyOverlapSelector,``).trim(),autosize:r.autosize,special:c,lazy:k(r.dynamic.lazy,!1),lazyMax:k(r.dynamic.lazyMax,o),lazyMaxDefaulted:r.dynamic.lazyMax===0?!1:!r.dynamic.lazyMax,name:r.name}})},we=(t,n)=>{let r=he(n),i=t.sticky&&t.location===e.Sidebar;return t.sizes.filter(e=>{let n=t.autosize?e[0]<=r||e[0]<=320:!0,a=i?e[1]<=window.innerHeight-100:!0;return n&&a})},Te=(e,t)=>
1259e.devices.includes(t),Ee=e=>{if(e.pageSelector.length===0)return!0;let t=M(e.pageSelector);return t.valid?t.element!==null:!1},I={Desktop:`desktop`,Mobile:`mobile`},De=e=>{let t=document.body,n=`adthrive-device-${e}`;if(!t.classList.contains(n))try{t.classList.add(n)}catch(e){F.error(`BodyDeviceClassComponent`,`init`,{message:e.message});let t=`classList`in document.createElement(`_`);F.error(`BodyDeviceClassComponent`,`init.support`,{support:t})}},L=e=>`adthrive-${e.location.replace(`_`,`-`).toLowerCase()}`,Oe=e=>`${L(e)}-${e.sequence}`;function ke(e,t,n){let r=e.pageOverrides.filter(e=>{let t=P(e.pageSelector);return t.valid||n==null||n({selector:e.pageSelector,selectorType:`pageOverride.pageSelector`,source:`getPageDensitySettings`,error:t.error}),e.pageSelector===``||t.elements&&t.elements.length}).map(e=>e[t]);return r.length?r[0]:e[t]}function Ae({targetDensity:e,targetAll:t,totalAvailableElements:n,mainContentHeight:r,minDivHeight:i,recipeCount:a}){return t?n:Math.floor(e*r/(1-e)/i)-a}function je(e,t,n,r){return e.filter(e=>{try{return t.querySelector(e.elementSelector)}catch(t){return r==null||r({selector:e.elementSelector,selectorType:`elementSelector`,source:`getCombinedMax`,context:n==null?void 0:n(e),error:t}),!1}}).map(e=>Number(e.max)+Number(e.lazyMaxDefaulted?0:e.lazyMax)).sort((e,t)=>t-e)[0]||0}let Me=(e,t)=>{if(e<=0)return{spacing:0,nextAfter:0,reasons:[`non-density-disabled`]};let n=t*e;return{spacing:n,nextAfter:n,reasons:[`non-density-viewport-ratio`]}},Ne=({settings:e,densityDevice:t,dynamicAds:n,target:r,totalAvailableElements:i,mainContentHeight:a,minDivHeight:o,recipeCount:s,selectorContext:c,onInvalidSelector:l})=>{let u=ke(e,t,l),d=u.adDensity,f=u.onePerViewport,p=d===.99,m=Ae({targetDensity:d,targetAll:p,totalAvailableElements:i,mainContentHeight:a,minDivHeight:o,recipeCount:s}),h=je(n,r,c,l);return{onePerViewport:f,targetAll:p,targetDensity:d,targetDensityUnits:m,combinedMax:h,numberOfUnits:Math.min(i,m,...h>0?[h]:[]),reasons:[p?`target-all-eligible`:`target-density-formula`,...f?[`viewport-floor`]:[]]}},Pe=({totalAvailableElements:e,targetDensityUnits:t,numberOfUnits:n,mainContentHeight:r,absoluteMinimumSpacing:i,viewportHeight:a,onePerViewport:o})=>{let s=e>t||e>n,c=[],l,u;return s?(u=!1,l=r/Math.min(t,n),c.push(`wider-spacing`)):(u=!0,l=o&&a>i?a:i,c.push(`absolute-minimum`)),o&&a>l?(c.push(`viewport-floor`),{insertEvery:a,usedAbsoluteMinimum:u,reasons:c}):{insertEvery:l,usedAbsoluteMinimum:u,reasons:c}},Fe=(e,t)=>{let n=e*.6;return n<=t?{insertEvery:t,usedAbsoluteMinimum:!0,reasons:[`clamped-absolute-minimum`]}:{insertEvery:n,usedAbsoluteMinimum:!1,reasons:[`wider-spacing`]}},Ie=(e,t)=>window.matchMedia(`(min-width: ${t}px)`).matches?`desktop`:window.matchMedia(`(min-width: ${e}px)`).matches?`tablet`:`phone`,R=e=>{let t=e.offsetHeight,n=e.offsetWidth,r=e.getBoundingClientRect(),i=document.body,a=document.documentElement,o=window.pageYOffset||a.scrollTop||i.scrollTop,s=window.pageXOffset||a.scrollLeft||i.scrollLeft,c=a.clientTop||i.clientTop||0,l=a.clientLeft||i.clientLeft||0,u=Math.round(r.top+o-c),d=Math.round(r.left+s-l);return{top:u,left:d,bottom:u+t,right:d+n,width:n,height:t}},Le=(e=document)=>(e===document?document.body:e).getBoundingClientRect().top,Re=e=>e.includes(`,`)?e.split(`,`):[e],ze=(e=document)=>{let t=e.querySelectorAll(`article`);if(t.length===0)return null;let n=Array.from(t).reduce((e,t)=>t.offsetHeight>e.offsetHeight?t:e);return n&&n.offsetHeight>window.innerHeight*1.5?n:null},Be=(e,t,n=document)=>{let r=new Set(t.map.map(({el:e})=>e)),i=ze(n),a=i?[i]:[],o=[];e.forEach(e=>{let t=j(e.elementSelector,n);if(!t.valid)return;let i=Array.from(t.elements),s=Re(e.elementSelector),c=s.length===1?i:[];s.length>1&&s.forEach(e=>{Array.from(j(e,n).elements).forEach(e=>{c.push(e)})});let l=new Set(i.slice(0,e.skip));for(let t of c){if(r.has(t))continue;let n=t.parentElement;n&&n!==document.body?a.push(n):a.push(t),l.has(t)||o.push({dynamicAd:e,element:t})}});let s=Le(n),c=o.map(e=>({item:e,top:e.element.getBoundingClientRect().top-s}));return c.sort((e,t)=>e.top-t.top),[a,c.map(({item:e})=>e)]},Ve=(e,t,n=document)=>{let[r,i]=Be(e,t,n);return r.length===0?[null,i]:[Array.from(r).reduce((e,t)=>
1259t.offsetHeight>e.offsetHeight?t:e)||document.body,i]},He=(e,t=`div #comments, section .comments`)=>{let n=e.querySelector(t);return n?e.offsetHeight-n.offsetHeight:e.offsetHeight},Ue=()=>{let e=document.body,t=document.documentElement;return Math.max(e.scrollHeight,e.offsetHeight,t.clientHeight,t.scrollHeight,t.offsetHeight)},We=()=>{let e=document.body,t=document.documentElement;return Math.max(e.scrollWidth,e.offsetWidth,t.clientWidth,t.scrollWidth,t.offsetWidth)};function z(e,t){t===void 0&&(t={});var n=t.insertAt;if(!(!e||typeof document>`u`)){var r=document.head||document.getElementsByTagName(`head`)[0],i=document.createElement(`style`);i.type=`text/css`,n===`top`&&r.firstChild?r.insertBefore(i,r.firstChild):r.appendChild(i),i.styleSheet?i.styleSheet.cssText=e:i.appendChild(document.createTextNode(e))}}let Ge=e=>e===9,Ke=e=>Ge(e)?`rp-sticky-sb-wrapper`:`rp-sticky-sidebar`,qe=e=>z(` 1260 .adthrive-device-phone .adthrive-sticky-content { 1261 height: 450px !important; 1262 margin-bottom: 100px !important; 1263 } 1264 .adthrive-content.adthrive-sticky { 1265 position: -webkit-sticky; 1266 position: sticky !important; 1267 top: 42px !important; 1268 margin-top: 42px !important; 1269 } 1270 .adthrive-content.adthrive-sticky:after { 1271 content: "â Advertisement. Scroll down to continue. â"; 1272 font-size: 10pt; 1273 margin-top: 5px; 1274 margin-bottom: 5px; 1275 display:block; 1276 color: #888; 1277 } 1278 .adthrive-sticky-container { 1279 position: relative; 1280 display: flex; 1281 flex-direction: column; 1282 justify-content: flex-start; 1283 align-items: center; 1284 min-height:${e||400}px; 1285 margin: 10px 0 10px 0; 1286 background-color: #FAFAFA; 1287 padding-bottom:0px; 1288 } 1289 `),Je=e=>{z(` 1290 .adthrive-recipe.adthrive-sticky { 1291 position: -webkit-sticky; 1292 position: sticky !important; 1293 top: 42px !important; 1294 margin-top: 42px !important; 1295 } 1296 .adthrive-recipe-sticky-container { 1297 position: relative; 1298 display: flex; 1299 flex-direction: column; 1300 justify-content: flex-start; 1301 align-items: center; 1302 min-height:${e||400}px !important; 1303 margin: 10px 0 10px 0; 1304 background-color: #FAFAFA; 1305 padding-bottom:0px; 1306 } 1307 `)},B=(e,t)=>e.some(e=>{let n=M(e);return n.valid?n.element!==null:(t==null||t(e,n.error),!1)}),Ye=e=>/^[-_a-zA-Z]+[-_a-zA-Z0-9]*$/.test(e),Xe=(e,t,n)=>{let r=e=>e?!!(e.classList.contains(`adthrive-ad`)||e.id.includes(`_${n}_`)):!1;switch(t){case`beforebegin`:return r(e.previousElementSibling);case`afterend`:return r(e.nextElementSibling);case`afterbegin`:return r(e.firstElementChild);case`beforeend`:return r(e.lastElementChild);default:return!1}};var V=class e extends l{constructor(e=[],t,n=Math.random){super(),this._choices=e,this._default=t,this._random=n}static fromArray(t,n){return new e(t.map(([e,t])=>({choice:e,weight:t})),n)}addChoice(e,t){this._choices.push({choice:e,weight:t})}get(){let e=this._random()*100,t=0;for(let{choice:n,weight:r}of this._choices)if(t+=r,t>=e)return n;return this._default}get totalWeight(){return this._choices.reduce((e,{weight:t})=>e+t,0)}};let H={AdDensity:`addensity`,AdLayout:`adlayout`,FooterCloseButton:`footerclose`,Interstitial:`interstitial`,RemoveVideoTitleWrapper:`removevideotitlewrapper`,StickyOutstream:`stickyoutstream`,StickyOutstreamOnStickyPlayer:`sospp`,VideoAdvancePlaylistRelatedPlayer:`videoadvanceplaylistrp`,MobileStickyPlayerPosition:`mspp`};var Ze=class{constructor(){s(this,`name`,void 0),s(this,`disable`,void 0),s(this,`gdprPurposes`,void 0)}};let U=`__adthriveTcfApiStub`,W=`__tcfapiLocator`,G=[],K=!1,q,J=e=>typeof e==`function`&&!!e[U],Qe=(e,t=2)=>{let n=G.findIndex(([n,r,i])=>n===`getTCData`&&r===t&&i===e);return n===-1?!1:(G.splice(n,1),!0)},$e=()=>{let e=()=>{if(document.querySelector(`iframe[name="${W}"]`))return;if(!document.body){setTimeout(e,5);return}let t=document.createElement(`iframe`);t.style.cssText=`display:none`,t.name=W,document.body.appendChild(t)};e()},Y=()=>{let e=window.__tcfapi;return typeof e==`function`&&!J(e)?e:void 0},X=()=>{let e=Y();if(e)for(;G.length>0;){let t=G.shift();if(t)try{e(t[0],t[1],t[2],t[3])}catch(e){e instanceof Error&&e.message}}},et=()=>{if(K)return;K=!0;let e=window.__tcfapi;Object.defineProperty(window,"__tcfapi",{configurable:!0,enumerable:!0,get:()=>e,set:t=>{e=t,typeof t==`function`&&!J(t)&&X()}}),Y()&&X()},tt=()=>{let e=(e,t=2,n,r)=>{if(e===void 0)return G;switch(e){case`ping`:typeof n==`function`&&n({gdprApplies:q,cmpLoaded:!1,cmpStatus:`stub`,apiVersion:`2.0`},!0);return;case`setGdprApplies`:parseInt(String(t),10)>=2&&typeof r==`boolean`&&(q=r,typeof n==`function`&&n(`set`,!0));return;default:G.push([e,t,n,r])}};return Object.defineProperty(e,U,{value:!0,configurable:!1,enumerable:!1,writable:!1}),e},nt=()=>{window.addEventListener(`message`,e=>{let t=typeof e.data==`string`,n={};if(t)try{n=JSON.parse(e.data)}catch{return}else n=e.data;let r=typeof n==`object`&&n?n.__tcfapiCall:void 0;if(!r)return;let i=e.source;window.__tcfapi(r.command,r.version,(e,n)=>{let a={__tcfapiReturn:{returnValue:e,success:n,callId:r.callId}};i==null||i.postMessage(t?JSON.stringify(a):a,`*`)},r.parameter)},!1)},rt=()=>
1307{if(et(),Y())return!1;let e=!1;return J(window.__tcfapi)||(window.__tcfapi=tt(),nt(),e=!0),$e(),window.__tcfapiQueue=G,e},it=(e,t=2,n,r)=>{if(e===void 0)return;let i=Y();i?i(e,t,n,r):(G.push([e,t,n,r]),rt())},at=(e,t=2,n,r)=>{it(e,t,n,r)},ot=(e=1e4)=>new Promise((t,n)=>{let r,i=!1,a=(e,a)=>{i||(i=!0,r&&clearTimeout(r),a&&e?t(e):n(Error(`Failed to retrieve TCData`)))};e>0&&(r=setTimeout(()=>{i||(i=!0,Qe(a,2),n(Error(`TCF API request timed out`)))},e)),at(`getTCData`,2,a)}),st=[`mcmpfreqrec`],Z=new class extends Ze{constructor(...e){super(...e),s(this,`name`,`BrowserStorage`),s(this,`disable`,!1),s(this,`gdprPurposes`,[1]),s(this,`_sessionStorageHandlerQueue`,[]),s(this,`_localStorageHandlerQueue`,[]),s(this,`_cookieHandlerQueue`,[]),s(this,`_gdpr`,void 0),s(this,`_shouldQueue`,!1),s(this,`_storageConsentGranted`,void 0),s(this,`_storageConsentUpdateInFlight`,0),s(this,`_storageConsentBeforeLatestUpdate`,void 0)}init(e,t){this._gdpr=e.gdpr===`true`,this._shouldQueue=this._gdpr,this._gdpr&&t&&(t.consentResponseCaptured.on(()=>{this._refreshStorageConsent(`consentResponseCaptured`)}),t.consentChanged.on(()=>{this._refreshStorageConsent(`consentChanged`)}))}_isGdprFromGlobal(){if(typeof window>`u`||!window.adthrive)return!1;let e=window.adthrive;return`gdprEnabled`in e?!!e.gdprEnabled:e.gdpr===`true`}_shouldQueueWrite(){return this._gdpr===void 0?this._isGdprFromGlobal():this._gdpr&&this._shouldQueue}isInGdprQueueMode(){return this._shouldQueueWrite()}_refreshStorageConsent(e){this._storageConsentBeforeLatestUpdate=this._storageConsentGranted,this._storageConsentUpdateInFlight+=1,this._updateStorageConsent().catch(e=>{}).then(()=>{this._storageConsentUpdateInFlight=Math.max(0,this._storageConsentUpdateInFlight-1)})}async _updateStorageConsent(){var e;let t=await ot();!(t==null||(e=t.purpose)==null)&&e.consents&&(this._storageConsentGranted=t.purpose.consents[1]===!0)}_getStorageWriteAvailability(e,t){try{let n=window[e];n.setItem(t,`1`);let r=n.getItem(t);return n.removeItem(t),r===`1`?{available:!0}:{available:!1,error:Error(`${e} write probe value mismatch`)}}catch(e){return{available:!1,error:e}}}getStorageApiAvailability(){return{localStorage:this._getStorageWriteAvailability(`localStorage`,`__adthrive_localstorage_test__`).available,sessionStorage:this._getStorageWriteAvailability(`sessionStorage`,`__adthrive_sessionstorage_test__`).available}}clearQueue(e,t){t!==void 0&&(this._storageConsentGranted=t);let n=this._gdpr&&this._hasStorageConsent()===!1,r=e&&n&&this.disable===!1&&this._storageConsentUpdateInFlight>0&&this._storageConsentBeforeLatestUpdate===!1;r&&(this._storageConsentGranted=!0),e&&(!n||r)&&(this._shouldQueue=!1,this._sessionStorageHandlerQueue.forEach(e=>{this.setSessionStorage(e.key,e.value)}),this._localStorageHandlerQueue.forEach(e=>{if(e.key===`adthrive_abgroup`){let t=Object.keys(e.value)[0],n=e.value[t],r=e.value[`${t}_weight`];this.getOrSetABGroupLocalStorageValue(t,n,r,{value:24,unit:`hours`})}else e.expiry?e.type===`internal`?this.setExpirableInternalLocalStorage(e.key,e.value,{expiry:e.expiry,resetOnRead:e.resetOnRead}):this.setExpirableExternalLocalStorage(e.key,e.value,{expiry:e.expiry,resetOnRead:e.resetOnRead}):e.type===`internal`?this.setInternalLocalStorage(e.key,e.value):this.setExternalLocalStorage(e.key,e.value)}),this._cookieHandlerQueue.forEach(e=>{e.type===`internal`?this.setInternalCookie(e.key,e.value):this.setExternalCookie(e.key,e.value)})),this._sessionStorageHandlerQueue=[],this._localStorageHandlerQueue=[],this._cookieHandlerQueue=[]}readInternalCookie(e){return this._verifyInternalKey(e),this._readCookie(e)}readExternalCookie(e){return this._readCookie(e)}readExternalCookieList(e){return this._readCookieList(e)}getAllCookies(){return this._getCookies()}readInternalLocalStorage(e){return this._verifyInternalKey(e),this._readFromLocalStorage(e)}readExternalLocalStorage(e){return this._readFromLocalStorage(e)}readSessionStorage(e){let t=window.sessionStorage.getItem(e);if(!t)return null;try{return JSON.parse(t)}catch{return t}}getLocalStorageWriteAvailability(){return this._getStorageWriteAvailability(`localStorage`,`__adthrive_local_storage_probe__`)}
1307deleteCookie(e){if(!this.disable){if(this._shouldQueueWrite()){this._cookieHandlerQueue=this._cookieHandlerQueue.filter(t=>t.key!==e);return}document.cookie=`${e}=; SameSite=None; Secure; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/`}}purgeCookie(e){this._cookieHandlerQueue=this._cookieHandlerQueue.filter(t=>t.key!==e);try{document.cookie=`${e}=; SameSite=None; Secure; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/`}catch{}}deleteLocalStorage(e){if(!this.disable){if(this._shouldQueueWrite()){this._localStorageHandlerQueue=this._localStorageHandlerQueue.filter(t=>t.key!==e);return}window.localStorage.removeItem(e)}}purgeLocalStorage(e){this._localStorageHandlerQueue=this._localStorageHandlerQueue.filter(t=>t.key!==e);try{window.localStorage.removeItem(e)}catch{}}deleteSessionStorage(e){if(!this.disable){if(this._shouldQueueWrite()){this._sessionStorageHandlerQueue=this._sessionStorageHandlerQueue.filter(t=>t.key!==e);return}window.sessionStorage.removeItem(e)}}purgeSessionStorage(e){this._sessionStorageHandlerQueue=this._sessionStorageHandlerQueue.filter(t=>t.key!==e);try{window.sessionStorage.removeItem(e)}catch{}}_hasStorageConsent(){if(this._storageConsentGranted!==void 0)return this._storageConsentGranted}setInternalCookie(e,t,n){this.disable||(this._verifyInternalKey(e),this._setCookieValue(`internal`,e,t,n))}setExternalCookie(e,t,n){this.disable||this._setCookieValue(`external`,e,t,n)}setInternalLocalStorage(e,t){if(!this.disable)if(this._verifyInternalKey(e),this._shouldQueueWrite()){let n={key:e,value:t,type:`internal`};this._localStorageHandlerQueue.push(n)}else{let n=typeof t==`string`?t:JSON.stringify(t);window.localStorage.setItem(e,n)}}setExternalLocalStorage(e,t){if(!this.disable)if(this._shouldQueueWrite()){let n={key:e,value:t,type:`external`};this._localStorageHandlerQueue.push(n)}else{let n=typeof t==`string`?t:JSON.stringify(t);window.localStorage.setItem(e,n)}}setExpirableInternalLocalStorage(e,t,n){if(!this.disable){this._verifyInternalKey(e);try{let r=(n==null?void 0:n.expiry)??{value:400,unit:`days`},i=(n==null?void 0:n.resetOnRead)??!1;if(this._shouldQueueWrite()){let n={key:e,value:t,type:`internal`,expires:this._getExpiryDate(r),expiry:r,resetOnRead:i};this._localStorageHandlerQueue.push(n)}else{let n={value:t,type:`internal`,expires:this._getExpiryDate(r),expiry:r,resetOnRead:i};window.localStorage.setItem(e,JSON.stringify(n))}}catch(e){console.error(e)}}}setExpirableExternalLocalStorage(e,t,n){if(!this.disable)try{let r=(n==null?void 0:n.expiry)??{value:400,unit:`days`},i=(n==null?void 0:n.resetOnRead)??!1;if(this._shouldQueueWrite()){let n={key:e,value:JSON.stringify(t),type:`external`,expires:this._getExpiryDate(r),expiry:r,resetOnRead:i};this._localStorageHandlerQueue.push(n)}else{let n={value:t,type:`external`,expires:this._getExpiryDate(r),expiry:r,resetOnRead:i};window.localStorage.setItem(e,JSON.stringify(n))}}catch(e){console.error(e)}}setSessionStorage(e,t){if(!this.disable)if(this._shouldQueueWrite()){let n={key:e,value:t};this._sessionStorageHandlerQueue.push(n)}else{let n=typeof t==`string`?t:JSON.stringify(t);window.sessionStorage.setItem(e,n)}}getOrSetABGroupLocalStorageValue(e,t,n,r,i=!0){let a=`adthrive_abgroup`;if(this._shouldQueueWrite()){let o={[e]:t,[`${e}_weight`]:n};return r?this.setExpirableInternalLocalStorage(a,o,{expiry:r,resetOnRead:i}):this.setInternalLocalStorage(a,o),[t,n]}let o=this.readInternalLocalStorage(a);if(o!==null){let t=o[e],n=o[`${e}_weight`]??null;if(this._isValidABGroupLocalStorageValue(t))return[t,n]}let s={...o,[e]:t,[`${e}_weight`]:n};return r?this.setExpirableInternalLocalStorage(a,s,{expiry:r,resetOnRead:i}):this.setInternalLocalStorage(a,s),[t,n]}_isValidABGroupLocalStorageValue(e){return e!=null&&!(typeof e==`number`&&isNaN(e))}_getExpiryDate({value:e,unit:t}){let n=new Date;return t===`milliseconds`?n.setTime(n.getTime()+e):t==`seconds`?n.setTime(n.getTime()+e*1e3):t===`minutes`?n.setTime(n.getTime()+e*60*1e3):t===`hours`?n.setTime(n.getTime()+e*60*60*1e3):t===`days`?n.setTime(n.getTime()+e*24*60*60*1e3):t===`months`&&n.setTime(n.getTime()+e*30*24*60*60*1e3),n.toUTCString()}_resetExpiry(e){return e.expires=this._getExpiryDate(e.expiry),e}_readCookie(e){let t=document.cookie.split(`; `).find(t=>t.split(`=`)[0]===e);if(!t)return null;let n=t.split(`=`)[1];if(n)try{return JSON.parse(decodeURIComponent(n))}catch{return decodeURIComponent(n)}return null}_readCookieList(e){let t;for(let n of document.cookie.split(`;`)){let[r,...i]=n.split(`=`);r.trim()===e&&(t=i.join(`=`).trim())}return t&&JSON.parse(t)||[]}_getCookies(){let e=[];return document.cookie.split(`;`).forEach(t=>{let[n,r]=t.split(`=`).map(e=>e.trim());e.push({name:n,value:r})}),e}_readFromLocalStorage(e){let t=window.localStorage.getItem(e);if(!t)return null;try{let n=JSON.parse(t),r=n.expires&&new Date().getTime()>=new Date(n.expires).getTime();if(e===`adthrive_abgroup`&&n.created)return window.localStorage.removeItem(e),null;if(n.resetOnRead&&n.expires&&!r){let t=this._resetExpiry(n);return window.localStorage.setItem(e,JSON.stringify(n)),t.value??t}else if(r)return window.localStorage.removeItem(e),null;if(Object.prototype.hasOwnProperty.call(n,`value`))try{return JSON.parse(n.value)}catch{return n.value}else return n}catch{return t}}_setCookieValue(e,t,n,r){try{if(this._shouldQueueWrite()){let r={key:t,value:n,type:e};this._cookieHandlerQueue.push(r)}else{let e=this._getExpiryDate((r==null?void 0:r.expiry)??{value:400,unit:`days`}),i=(r==null?void 0:r.sameSite)??`None`,a=(r==null?void 0:r.secure)??!0,o=typeof n==`object`?JSON.stringify(n):n;document.cookie=`${t}=${o}
1307; SameSite=${i}; ${a?`Secure;`:``} expires=${e}; path=/`}}catch{}}_verifyInternalKey(e){let t=e.startsWith(`adthrive_`),n=e.startsWith(`adt_`);if(!t&&!n&&!st.includes(e))throw Error(`When reading an internal cookie, the key must start with "adthrive_" or "adt_" or be part of the allowed legacy keys.`)}},ct=e=>{let t=5381,n=e.length;for(;n;)t=t*33^e.charCodeAt(--n);return t>>>0},lt=e=>ct(e).toString(16),ut=e=>{if(e===null)return null;let t=e.map(({choice:e})=>e);return lt(JSON.stringify(t))},dt=(e,t)=>{var n;return((n=e.find(({choice:e})=>e===t))==null?void 0:n.weight)??null},ft=e=>e!=null&&!(typeof e==`number`&&isNaN(e)),pt=(e,t)=>{if(Z.isInGdprQueueMode())return t();let n=ut(e._choices),r=((e._expConfigABGroup?e._expConfigABGroup:e.abgroup)||e.key||``).toLowerCase(),i=n?`${r}_${n}`:r,a=e.localStoragePrefix?`${e.localStoragePrefix}-${i}`:i,o=Z.readInternalLocalStorage(`adthrive_branch`);(o&&o.enabled)===!1&&Z.deleteLocalStorage(a);let s=t(),c=dt(e._choices,s),[l,u]=Z.getOrSetABGroupLocalStorageValue(a,s,c,{value:24,unit:`hours`});return e._stickyResult=l,e._stickyWeight=u,l},mt=(e=window.location.search)=>{let t=+(e.indexOf(`?`)===0);return e.slice(t).split(`&`).reduce((e,t)=>{let[n,r]=t.split(`=`);return e.set(n,r),e},new Map)},ht=e=>{let t={},n=mt().get(e);if(n)try{let r=decodeURIComponent(n).replace(/\+/g,``);t=JSON.parse(r),F.event(`ExperimentOverridesUtil`,`getExperimentOverrides`,e,t)}catch(e){e instanceof URIError}return t},gt=(e,t)=>typeof e==typeof t,_t=(e,t)=>{let n=e.adDensityEnabled,r=e.adDensityLayout.pageOverrides.find(e=>!!document.querySelector(e.pageSelector)&&(e[t].onePerViewport||typeof e[t].adDensity==`number`));return n?!r:!0},vt=e=>{var t;let n=(t=e.videoPlayers)==null||(t=t.partners)==null||(t=t.stickyOutstream)==null?void 0:t.blockedPageSelectors;return n?!document.querySelector(n):!0},yt=e=>{let t=e.adOptions.interstitialBlockedPageSelectors;return t?!document.querySelector(t):!0},bt=(e,t,n)=>{switch(t){case H.AdDensity:return _t(e,n);case H.StickyOutstream:return vt(e);case H.Interstitial:return yt(e);default:return!0}},xt=e=>e.length===1,St=e=>{let t=e.reduce((e,t)=>t.weight?t.weight+e:e,0);return e.length>0&&e.every(e=>{let t=e.value,n=e.weight;return!!(t!=null&&!(typeof t==`number`&&isNaN(t))&&n)})&&t===100},Ct=(e,t)=>{if(!e)return!1;let n=!!e.enabled,r=e.dateStart==null||Date.now()>=e.dateStart,i=e.dateEnd==null||Date.now()<=e.dateEnd,a=e.selector===null||e.selector!==``&&!!document.querySelector(e.selector),o=e.platform===`mobile`&&t===`mobile`,s=e.platform===`desktop`&&t===`desktop`,c=e.platform===null||e.platform===`all`||o||s,l=e.experimentType===`bernoulliTrial`?xt(e.variants):St(e.variants);return l||F.error(`SiteTest`,`validateSiteExperiment`,`experiment presented invalid choices for key:`,e.key,e.variants),n&&r&&i&&a&&c&&l};var wt=class{constructor(e){var t;s(this,`siteExperiments`,[]),s(this,`_clsOptions`,void 0),s(this,`_device`,void 0),this._clsOptions=e,this._device=D()?`mobile`:`desktop`,this.siteExperiments=((t=this._clsOptions.siteAds.siteExperiments)==null?void 0:t.filter(e=>{let t=e.key,n=Ct(e,this._device),r=bt(this._clsOptions.siteAds,t,this._device);return n&&r}))??[]}getSiteExperimentByKey(e){let t=this.siteExperiments.filter(t=>t.key.toLowerCase()===e.toLowerCase())[0],n=ht(`at_site_features`),r=gt(t!=null&&t.variants[1]?t==null?void 0:t.variants[1].value:t==null?void 0:t.variants[0].value,n[e]);return t&&n[e]&&r&&(t.variants=[{displayName:`test`,value:n[e],weight:100,id:0}]),t}},Tt=class{constructor(){s(this,`experimentConfig`,void 0)}get enabled(){return this.experimentConfig!==void 0}_isValidResult(e,t=()=>!0){return t()&&ft(e)}},Et=class extends Tt{constructor(...e){super(...e),s(this,`_resultValidator`,()=>!0)}_isValidResult(e){return super._isValidResult(e,()=>this._resultValidator(e)||e===`control`)}run(){if(!this.enabled)return F.error(`CLSWeightedChoiceSiteExperiment`,`run`,`() => %o`,`No experiment config found. Defaulting to control.`),`control`;if(!this._mappedChoices||this._mappedChoices.length===0)return F.error(`CLSWeightedChoiceSiteExperiment`,`run`,`() => %o`,`No experiment variants found. Defaulting to control.`),`control`;let e=new V(this._mappedChoices).get();return this._isValidResult(e)?e:(F.error(`CLSWeightedChoiceSiteExperiment`,`run`,`() => %o`,`Invalid result from experiment choices. Defaulting to control.`),`control`)}}
1307,Dt=class extends Et{constructor(e){super(),s(this,`_choices`,[]),s(this,`_mappedChoices`,[]),s(this,`_result`,``),s(this,`_clsSiteExperiments`,void 0),s(this,`_resultValidator`,e=>typeof e==`string`),s(this,`key`,H.AdLayout),s(this,`abgroup`,H.AdLayout),this._clsSiteExperiments=new wt(e),this.experimentConfig=this._clsSiteExperiments.getSiteExperimentByKey(this.key),this.enabled&&this.experimentConfig&&(this._choices=this.experimentConfig.variants,this._mappedChoices=this._mapChoices(),this._result=this.run(),e.setWeightedChoiceExperiment(this.abgroup,this._result,!0))}get result(){return this._result}run(){return pt(this,()=>{if(!this.enabled)return F.error(`CLSAdLayoutSiteExperiment`,`run`,`() => %o`,`No experiment config found. Defaulting to empty class name.`),``;let e=new V(this._mappedChoices).get();return this._isValidResult(e)?e:(F.error(`CLSAdLayoutSiteExperiment`,`run`,`() => %o`,`Invalid result from experiment choices. Defaulting to empty class name.`),``)})}_mapChoices(){return this._choices.map(({weight:e,value:t})=>({weight:e,choice:t}))}},Ot=class extends Et{constructor(e){super(),s(this,`_choices`,[]),s(this,`_mappedChoices`,[]),s(this,`_result`,`control`),s(this,`_clsSiteExperiments`,void 0),s(this,`_resultValidator`,e=>typeof e==`number`),s(this,`key`,H.AdDensity),s(this,`abgroup`,H.AdDensity),this._clsSiteExperiments=new wt(e),this.experimentConfig=this._clsSiteExperiments.getSiteExperimentByKey(this.key),this.enabled&&this.experimentConfig&&(this._choices=this.experimentConfig.variants,this._mappedChoices=this._mapChoices(),this._result=this.run(),e.setWeightedChoiceExperiment(this.abgroup,this._result,!0))}get result(){return this._result}run(){return pt(this,()=>{if(!this.enabled)return F.error(`CLSTargetAdDensitySiteExperiment`,`run`,`() => %o`,`No experiment config found. Defaulting to control.`),`control`;let e=new V(this._mappedChoices).get();return this._isValidResult(e)?e:(F.error(`CLSTargetAdDensitySiteExperiment`,`run`,`() => %o`,`Invalid result from experiment choices. Defaulting to control.`),`control`)})}_mapChoices(){return this._choices.map(({weight:e,value:t})=>({weight:e,choice:typeof t==`number`?(t||0)/100:`control`}))}},kt=class{constructor(){s(this,`_clsOptions`,new c),s(this,`shouldUseCoreExperimentsConfig`,!1)}setExperimentKey(e=!1){this._clsOptions.setExperiment(this.abgroup,this.result,e)}},At=class extends kt{constructor(){super(),s(this,`key`,`SMRA`),s(this,`abgroup`,`smra1`),s(this,`_result`,!1),D()&&(this._result=this.run(),this.setExperimentKey())}run(){return new u(.05).get()}get result(){return this._result}};let Q=`250px`;var jt=class{constructor(t,n){this._clsOptions=t,this._adInjectionMap=n,s(this,`_recipeCount`,0),s(this,`_mainContentHeight`,0),s(this,`_mainContentDiv`,null),s(this,`_totalAvailableElements`,[]),s(this,`_densityElementCoords`,void 0),s(this,`_minDivHeight`,250),s(this,`_densityDevice`,I.Desktop),s(this,`_pubLog`,{onePerViewport:!1,targetDensity:0,targetDensityUnits:0,combinedMax:0}),s(this,`_smallerIncrementAttempts`,0),s(this,`_absoluteMinimumSpacingByDevice`,250),s(this,`_usedAbsoluteMinimum`,!1),s(this,`_infPageEndOffset`,0),s(this,`locationMaxLazySequence`,new Map([[e.Recipe,5]])),s(this,`locationToMinHeight`,{Below_Post:Q,Content:Q,Recipe:Q,Sidebar:Q}),s(this,`_device`,void 0),s(this,`_smallMobileRecipeAdsExperimentEnabled`,void 0),s(this,`_clsTargetAdDensitySiteExperiment`,void 0);let{tablet:r,desktop:i}=this._clsOptions.siteAds.breakpoints;this._device=Ie(r,i),this._smallMobileRecipeAdsExperimentEnabled=new At().result,this._isSmallMobileRecipeAdLocation(e.Recipe)&&(this.locationToMinHeight.Recipe=`100px`),this._clsTargetAdDensitySiteExperiment=this._clsOptions.siteAds.siteExperiments?new Ot(this._clsOptions):null}start(){try{var e;De(this._device);let n=new Dt(this._clsOptions);if(n.enabled){let e=n.result,t=e.startsWith(`.`)?e.substring(1):e;if(Ye(t))try{document.body.classList.add(t)}catch(e){F.error(`ClsDynamicAdsInjector`,`start`,`Uncaught CSS Class error: ${e}`)}else F.error(`ClsDynamicAdsInjector`,`start`,`Invalid class name: ${t}`)}let r=Ce(this._device,this._clsOptions.siteAds).filter(e=>this._locationEnabled(e)).filter(e=>Te(e,this._device)).filter(e=>Ee(e)),i=this.inject(r),a=this._clsOptions.siteAds.adOptions.stickyContainerConfig;if(!(a==null||(e=a.content)==null)&&e.enabled&&!B(a.blockedSelectors||[],this._logInvalidBlockedSelector.bind(this))){var t;qe(a==null||(t=a.content)==null?void 0:t.minHeight)}
1307i.forEach(e=>this._clsOptions.setInjectedSlots(e))}catch(e){F.error(`ClsDynamicAdsInjector`,`start`,e)}}inject(t,n=document){this._densityElementCoords=void 0,this._densityDevice=this._device===`desktop`?I.Desktop:I.Mobile,this._overrideDefaultAdDensitySettingsWithSiteExperiment();let r=this._clsOptions.siteAds,i=k(r.adDensityEnabled,!0),a=r.adDensityLayout&&i,o=t.filter(t=>a?t.location!==e.Content:t),s=t.filter(t=>a?t.location===e.Content:null),c=s.length?this._preserveDensityMeasurements(s,n):!1;return this._capturePreSlotInsertionPageAreaMeasurement(),[...o.length?this._injectNonDensitySlots(o,n):[],...s.length?this._injectDensitySlots(s,n,c):[]]}_injectNonDensitySlots(t,n=document){var r;let i=[],a=[],o=!1;if(t.some(t=>t.location===e.Recipe&&t.sticky)&&!B(((r=this._clsOptions.siteAds.adOptions.stickyContainerConfig)==null?void 0:r.blockedSelectors)||[],this._logInvalidBlockedSelector.bind(this))){var s,c;let t=this._clsOptions.siteAds.adOptions.stickyContainerConfig;Je(this._isSmallMobileRecipeAdLocation(e.Recipe)?100:this._device===`phone`?t==null||(s=t.recipeMobile)==null?void 0:s.minHeight:t==null||(c=t.recipeDesktop)==null?void 0:c.minHeight),o=!0}for(let e of t)this._insertNonDensityAds(e,i,a,n);return o||a.forEach(({location:e,element:t})=>{t.style.minHeight=this.locationToMinHeight[e]}),i}_isSmallMobileRecipeAdLocation(e){return this._smallMobileRecipeAdsExperimentEnabled&&A(e,this._device)}_injectDensitySlots(e,t=document,n=!1){try{n||(this._calculateMainContentHeightAndAllElements(e,t),this._capturePreSlotInsertionMainContentMeasurement(),this._captureDensityElementCoords())}catch{return[]}let{onePerViewport:r,targetAll:i,targetDensityUnits:a,combinedMax:o,numberOfUnits:s}=this._getDensitySettings(e,t);return this._absoluteMinimumSpacingByDevice=r?window.innerHeight:this._absoluteMinimumSpacingByDevice,s?(this._adInjectionMap.filterUsed(),this._findElementsForAds(s,r,i,o,a,t),this._insertAds()):[]}_preserveDensityMeasurements(e,t=document){try{return this._calculateMainContentHeightAndAllElements(e,t),this._capturePreSlotInsertionMainContentMeasurement(),this._captureDensityElementCoords(),!0}catch{return!1}}_overrideDefaultAdDensitySettingsWithSiteExperiment(){var e;if((e=this._clsTargetAdDensitySiteExperiment)!=null&&e.enabled){let e=this._clsTargetAdDensitySiteExperiment.result;typeof e==`number`&&(this._clsOptions.siteAds.adDensityEnabled=!0,this._clsOptions.siteAds.adDensityLayout[this._densityDevice].adDensity=e)}}_getDensitySettings(e,t=document){let{onePerViewport:n,targetAll:r,targetDensity:i,targetDensityUnits:a,combinedMax:o,numberOfUnits:s}=Ne({settings:this._clsOptions.siteAds.adDensityLayout,densityDevice:this._densityDevice,dynamicAds:e,target:t,totalAvailableElements:this._totalAvailableElements.length,mainContentHeight:this._mainContentHeight,minDivHeight:this._minDivHeight,recipeCount:this._recipeCount,selectorContext:this._getDynamicAdSelectorContext.bind(this),onInvalidSelector:({selector:e,selectorType:t,source:n,context:r,error:i})=>{}});return this._pubLog={onePerViewport:n,targetDensity:i,targetDensityUnits:a,combinedMax:o},{onePerViewport:n,targetAll:r,targetDensityUnits:a,combinedMax:o,numberOfUnits:s}}_elementLargerThanMainContent(e){return e.offsetHeight>=this._mainContentHeight&&this._totalAvailableElements.length>1}_elementDisplayNone(e){let t=window.getComputedStyle(e,null).display;return t&&t===`none`||e.style.display===`none`}_isBelowMaxes(e,t){return this._adInjectionMap.map.length<e&&this._adInjectionMap.map.length<t}_findElementsForAds(e,t,n,r,i,a=document){this._clsOptions.targetDensityLog={onePerViewport:t,combinedMax:r,targetDensityUnits:i,targetDensityPercentage:this._pubLog.targetDensity,mainContentHeight:this._mainContentHeight,recipeCount:this._recipeCount,numberOfEls:this._totalAvailableElements.length};let o=t=>{for(let{dynamicAd:o,element:s}of this._totalAvailableElements)if(this._logDensityInfo(s,o.elementSelector,t),!(!n&&this._elementLargerThanMainContent(s)||this._elementDisplayNone(s)))if(this._isBelowMaxes(r,i)){if(this._checkElementSpacing({dynamicAd:o,element:s,insertEvery:t,targetAll:n,target:a}),this._hasReachedQuota(e))return}else break;this._hasReachedQuota(e)||!this._usedAbsoluteMinimum&&this._smallerIncrementAttempts<5&&(++this._smallerIncrementAttempts,o(this._getSmallerIncrement(t)))};o(this._getInsertEvery(e,t,i))}_hasReachedQuota(e){return this._adInjectionMap.map.length>=e}_getSmallerIncrement(e){let t=Fe(e,this._absoluteMinimumSpacingByDevice);return this._usedAbsoluteMinimum=t.usedAbsoluteMinimum,t.insertEvery}
1307_insertNonDensityAds(t,n,r,i=document){let{spacing:a,nextAfter:o}=Me(t.spacing,window.innerHeight),s=0,c=this._repeatDynamicAds(t),l=this.getElements(t.elementSelector,i,t),u=this._shouldUseRegularSlotHeightForSpacing(t),d=a>0&&u?this._getElementSpacingBottoms(l):new Map,f=0;t.skip;for(let p=t.skip;p<l.length&&!(s+1>c.length);p+=t.every){let m=l[p];if(a>0){let e=u?(d.get(m)??R(m).bottom)+f:R(m).bottom;if(e<=o)continue;o=e+a}let h=c[s],g=`${h.location}_${h.sequence}`;n.some(e=>e.name===g)&&(s+=1);let _=this.getDynamicElementId(h),v=L(t),y=Oe(t),b=t.location===e.Sidebar&&t.sticky?Ke(h.sequence):``,ee=[t.location===e.Recipe&&t.sticky?`adthrive-recipe-sticky-container`:``,v,y,...t.classNames];if(Xe(m,t.position,t.location)&&t.location===e.Recipe)continue;let x=this.addAd(m,_,t.position,ee,b);if(x){let a=we(h,x);if(a.length){let o={clsDynamicAd:t,dynamicAd:h,element:x,sizes:a,name:g,infinite:i!==document};n.push(o),r.push({location:h.location,element:x}),t.location===e.Recipe&&++this._recipeCount,s+=1,u&&(f+=this._getRegularSlotSpacingHeight(h.location))}m=b&&x.parentElement||x}}}_shouldUseRegularSlotHeightForSpacing(t){var n;return t.location===e.Recipe&&t.sticky&&!B(((n=this._clsOptions.siteAds.adOptions.stickyContainerConfig)==null?void 0:n.blockedSelectors)||[],this._logInvalidBlockedSelector.bind(this))}_getElementSpacingBottoms(e){return Array.from(e).reduce((e,t)=>(e.set(t,R(t).bottom),e),new Map)}_getRegularSlotSpacingHeight(e){let t=parseInt(this.locationToMinHeight[e],10);return Number.isFinite(t)?t:this._minDivHeight}_insertAds(){let e=[],t=0;return this._adInjectionMap.filterUsed(),this._adInjectionMap.map.forEach(({el:n,dynamicAd:r,target:i},a)=>{let o=Number(r.sequence)+a,s=r.max,c=r.lazy&&o>s;r.sequence=o,r.lazy=c;let l=this._addContentAd(n,r,i);l&&(r.used=!0,e.push(l),++t)}),e}_getInsertEvery(e,t,n){let r=Pe({totalAvailableElements:this._totalAvailableElements.length,targetDensityUnits:n,numberOfUnits:e,mainContentHeight:this._mainContentHeight,absoluteMinimumSpacing:this._absoluteMinimumSpacingByDevice,viewportHeight:window.innerHeight,onePerViewport:t});return this._usedAbsoluteMinimum=r.usedAbsoluteMinimum,r.insertEvery}_logDensityInfo(e,t,n){let{onePerViewport:r,targetDensity:i,targetDensityUnits:a,combinedMax:o}=this._pubLog;this._totalAvailableElements.length}_checkElementSpacing({dynamicAd:e,element:t,insertEvery:n,targetAll:r,target:i}){(this._isFirstAdInjected()||this._hasProperSpacing(t,e,r,n))&&this._markSpotForContentAd(t,{...e},i)}_isFirstAdInjected(){return!this._adInjectionMap.map.length}_markSpotForContentAd(e,t,n=document){let r=t.position===`beforebegin`||t.position===`afterbegin`;this._adInjectionMap.addSorted(e,this._getElementCoords(e,r),t,n)}_hasProperSpacing(t,n,r,i){let a=n.position===`beforebegin`||n.position===`afterbegin`,o=n.position===`beforeend`||n.position===`afterbegin`,s=r||this._isElementFarEnoughFromOtherAdElements(t,i,a),c=o||this._isElementNotInRow(t,a),l=t.id.indexOf(`AdThrive_${e.Below_Post}`)===-1;return s&&c&&l}_isElementFarEnoughFromOtherAdElements(e,t,n){let r=this._getElementCoords(e,n),[i,a]=this._adInjectionMap.findNeighborIndices(r),o=i===null?void 0:this._adInjectionMap.map[i].coords,s=a===null?void 0:this._adInjectionMap.map[a].coords;return(o===void 0||r-t>o)&&(s===void 0||r+t<s)}_isElementNotInRow(e,t){let n=e.previousElementSibling,r=e.nextElementSibling,i=t?!n&&r||n&&e.tagName!==n.tagName?r:n:r;if(!i)return!0;let a=e.getBoundingClientRect();if(a.height===0)return!0;let o=i.getBoundingClientRect();return a.top!==o.top}_calculateMainContentHeightAndAllElements(e,t=document){let[n,r]=Ve(e,this._adInjectionMap,t);if(!n)throw Error(`No main content element found`);this._mainContentDiv=n,this._totalAvailableElements=r,this._mainContentHeight=He(this._mainContentDiv)}_captureDensityElementCoords(){this._densityElementCoords=this._totalAvailableElements.reduce((e,{element:t})=>(e.set(t,{bottom:this._getLiveElementCoords(t),top:this._getLiveElementCoords(t,!0)}),e),new WeakMap)}_capturePreSlotInsertionMainContentMeasurement(){window.adthriveCLS&&(window.adthriveCLS.preSlotInsertionMeasurements?window.adthriveCLS.preSlotInsertionMeasurements.mainContentHeight=this._mainContentHeight:window.adthriveCLS.preSlotInsertionMeasurements={mainContentHeight:this._mainContentHeight})}_capturePreSlotInsertionPageAreaMeasurement(){if(window.adthriveCLS){let e=Ue()*We();window.adthriveCLS.preSlotInsertionMeasurements?window.adthriveCLS.preSlotInsertionMeasurements.totalPageArea=e:window.adthriveCLS.preSlotInsertionMeasurements={totalPageArea:e}}}_getElementCoords(e,t=!1){var n;let r=(n=this._densityElementCoords)==null?void 0:n.get(e);return r?t?r.top:r.bottom:this._getLiveElementCoords(e,t)}_getLiveElementCoords(e,t=!1){let n=e.getBoundingClientRect();return(t?n.top:n.bottom)+window.scrollY}_addContentAd(e,t,n=document){var r;let i=null,a=L(t),o=Oe(t),s=this._clsOptions.siteAds.adOptions.stickyContainerConfig,c=s==null||(r=s.content)==null?void 0:r.enabled,l=c?`adthrive-sticky-container`:``,u=this.addAd(e,this.getDynamicElementId(t),t.position,[l,a,o,...t.classNames]);if(u){let e=we(t,u);if(e.length){var d;(!c||!(!(s==null||(d=s.content)==null)&&d.minHeight))&&(u.style.minHeight=this.locationToMinHeight[t.location]),i={clsDynamicAd:t,dynamicAd:t,element:u,sizes:e,name:`${t.location}_${t.sequence}`,infinite:n!==document}}}return i}getDynamicElementId(e){return`AdThrive_${e.location}_${e.sequence}_${this._device}`}getElements(e,t=document,n){let r=j(e,t);return r.valid,r.elements}_getDynamicAdSelectorContext(e){return{location:e.location,sequence:e.sequence,name:e.name}}_logInvalidBlockedSelector(e,t){}addAd(e,t,n,r=[],i=``){if(!document.getElementById(t)){let a=`<div id="${t}" class="adthrive-ad ${r.join(` `)}"></div>`;i&&(a=`<div class="${i}">${a}</div>`),e.insertAdjacentHTML(n,a)}return document.getElementById(t)}_repeatDynamicAds(t){let n=[],r=t.location===e.Recipe?99:this.locationMaxLazySequence.get(t.location),i=t.lazy?k(r,0):0,a=t.max,o=t.lazyMax,s=i===0&&t.lazy?a+o:Math.min(Math.max(i-t.sequence+1,0),a+o),c=Math.max(a,s);for(let e=0;e<c;e++){let r=Number(t.sequence)+e,i=t.lazy&&e>=a,o=r;t.name===`Recipe_1`&&r>=5&&(o=r+1),n.push({...t,sequence:o,lazy:i})}return n}_locationEnabled(e){let t=this._clsOptions.enabledLocations.includes(e.location),n=this._clsOptions.disableAds&&this._clsOptions.disableAds.all||document.body.classList.contains(`adthrive-disable-all`),r=!document.body.classList.contains(`adthrive-disable-content`)&&!this._clsOptions.disableAds.reasons.has(`content_plugin`);return t&&!n&&r}},Mt=class{constructor(){s(this,`_map`,[])}add(e,t,n,r=document){this._map.push({el:e,coords:t,dynamicAd:n,target:r})}addSorted(e,t,n,r=document){let i=this._upperBoundIndex(t);this._map.splice(i,0,{el:e,coords:t,dynamicAd:n,target:r})}get map(){return this._map}sort(){this._map.sort(({coords:e},{coords:t})=>e-t)}filterUsed(){this._map=this._map.filter(({dynamicAd:e})=>!e.used)}findNeighborIndices(e){let t=this._upperBoundIndex(e);return[t-1>=0?t-1:null,t<this._map.length?t:null]}_upperBoundIndex(e){let t=0,n=this._map.length;for(;t<n;){let r=t+n>>>1;this._map[r].coords<=e?t=r+1:n=r}return t}reset(){this._map=[]}},Nt=class extends Mt{};let Pt=e=>{let t=ne(),n=T(),r=e.siteAdsProfiles,i=null;if(r&&r.length)for(let e of r){let r=e.targeting.device,a=e.targeting.browserEngine,o=r&&r.length&&r.includes(n),s=a&&a.length&&a.includes(t);o&&s&&(i=e)}return i},Ft=e=>{let t=Pt(e);if(t){let e=t.profileId;document.body.classList.add(`raptive-profile-${e}`)}},$={Video_Collapse_Autoplay_SoundOff:`Video_Collapse_Autoplay_SoundOff`,Video_Indiv
1307idual_Autoplay_SOff:`Video_Individual_Autoplay_SOff`,Video_Coll_SOff_Smartphone:`Video_Coll_SOff_Smartphone`,Video_In_Post_ClicktoPlay_SoundOn:`Video_In-Post_ClicktoPlay_SoundOn`,Video_Collapse_Autoplay_SoundOff_15s:`Video_Collapse_Autoplay_SoundOff_15s`,Video_Individual_Autoplay_SOff_15s:`Video_Individual_Autoplay_SOff_15s`,Video_Coll_SOff_Smartphone_15s:`Video_Coll_SOff_Smartphone_15s`,Video_In_Post_ClicktoPlay_SoundOn_15s:`Video_In-Post_ClicktoPlay_SoundOn_15s`};var It=class{get enabled(){throw Error(`Enablement must be defined at factory creation time.`)}};let Lt=(e=navigator.userAgent)=>E(e)===`desktop`;var Rt=class extends It{constructor(e,t,n){super(),this._videoConfig=e,this._component=t,this._context=n,s(this,`_potentialPlayerMap`,void 0),s(this,`_device`,void 0),s(this,`_stickyRelatedOnPage`,!1),s(this,`_relatedMediaIds`,[]),this._device=Lt()?`desktop`:`mobile`,this._potentialPlayerMap=this.setPotentialPlayersMap()}setPotentialPlayersMap(){let e=this._videoConfig.players||[],t=this._filterPlayerMap();return t.stationaryRelated=this._getPotentialStationaryPlayers(e,t.stationaryRelated),this._potentialPlayerMap=t,this._potentialPlayerMap}_getPotentialStationaryPlayers(e,t){let n=new Set(t);return e.forEach(e=>e.type===`stationaryRelated`&&e.enabled&&n.add(e)),[...n]}_filterPlayerMap(){let e=this._videoConfig.players,t={stickyRelated:[],stickyPlaylist:[],stationaryRelated:[]};return e&&e.length?e.filter(e=>{var t;return(t=e.devices)==null?void 0:t.includes(this._device)}).reduce((e,t)=>{if(e[t.type]||(F.event(this._component,`constructor`,`Unknown Video Player Type detected`,t.type),e[t.type]=[]),t.enabled){let n=t.type;this._videoConfig.shouldDisableStickyRelated&&t.type===`stickyRelated`&&(n=`stationaryRelated`),e[n].push(t)}return e},t):t}_checkPlayerSelectorOnPage(e){for(let t of this._potentialPlayerMap[e]){let e=this._getPlacementElement(t);if(e)return{player:t,playerElement:e}}return{player:null,playerElement:null}}_getOverrideElement(e,t,n){if(e&&t){let r=document.createElement(`div`);t.insertAdjacentElement(e.position,r),n=r}else{let{player:e,playerElement:t}=this._checkPlayerSelectorOnPage(`stickyPlaylist`);if(e&&t){let r=document.createElement(`div`);t.insertAdjacentElement(e.position,r),n=r}}return n}_shouldOverrideElement(e){let t=e.getAttribute(`override-embed`);return t===`true`||t===`false`?t===`true`:this._videoConfig.relatedSettings?this._videoConfig.relatedSettings.overrideEmbedLocation:!1}_checkPageSelector(e,t,n=[]){return e&&t&&n.length===0?(window.location.pathname!==`/`&&F.event(`VideoUtils`,`getPlacementElement`,{name:`Error`,message:`PSNF: ${e} does not exist on the page`}),!1):!0}_getElementSelector(e,t,n){return t&&t.length>n?t[n]:(F.event(`VideoUtils`,`getPlacementElement`,{name:`Error`,message:`ESNF: ${e} does not exist on the page`}),null)}_getPlacementElement(e){let{pageSelector:t,elementSelector:n,skip:r}=e,{valid:i,elements:a,...o}=P(t),{valid:s,elements:c,...l}=N(n);return t!==``&&!i?(F.error(`VideoUtils`,`getPlacementElement`,Error(`${t} is not a valid selector`),o),null):s?this._checkPageSelector(t,i,a)&&this._getElementSelector(n,c,r)||null:(F.error(`VideoUtils`,`getPlacementElement`,Error(`${n} is not a valid selector`),l),null)}_getEmbeddedPlayerType(e){if(this._videoConfig.shouldDisableStickyRelated)return`static`;let t=e.getAttribute(`data-player-type`);return(!t||t==="default")&&(t=this._videoConfig.relatedSettings?this._videoConfig.relatedSettings.defaultPlayerType:`static`),this._stickyRelatedOnPage&&(t=`static`),t}_getMediaId(e){let t=e.getAttribute(`data-video-id`);return t?(this._relatedMediaIds.push(t),t):!1}_getOrientation(e){return e.getAttribute(`orientation`)===`vertical`?`vertical`:`horizontal`}_createRelatedPlayer(e,t,n,r,i){t===`collapse`?this._createCollapsePlayer(e,n):t===`static`&&this._createStaticPlayer(e,n,r,i)}_createCollapsePlayer(e,t){let{player:n,playerElement:r}=this._checkPlayerSelectorOnPage(`stickyRelated`),i=n||this._potentialPlayerMap.stationaryRelated[0];i&&i.playerId&&!this._videoConfig.shouldDisableStickyRelated?(this._shouldOverrideElement(t)&&(t=this._getOverrideElement(n,r,t)),t=document.querySelector(`#cls-v
1307ideo-container-${e} > div`)||t,this._createStickyRelatedPlayer({...i,mediaId:e},t)):F.error(this._component,`_createCollapsePlayer`,`No video player found`)}_createStaticPlayer(e,t,n,r){if(this._potentialPlayerMap.stationaryRelated.length&&this._potentialPlayerMap.stationaryRelated[0].playerId){let i=this._potentialPlayerMap.stationaryRelated[0];this._createStationaryRelatedPlayer({...i,mediaOrPlaylistId:e,orientation:r},t,n)}else F.error(this._component,`_createStaticPlayer`,`No video player found`)}_shouldRunAutoplayPlayers(){return!!(this._isVideoAllowedOnPage()&&(this._potentialPlayerMap.stickyRelated.length||this._potentialPlayerMap.stickyPlaylist.length))}_setPlaylistMediaIdWhenStationaryOnPage(e,t){if(this._potentialPlayerMap.stationaryRelated.length&&this._potentialPlayerMap.stationaryRelated[0].playerId&&e&&e.length){let n=e[0].getAttribute(`data-video-id`);return n?{...t,mediaId:n}:t}return t}_determineAutoplayPlayers(e){let t=this._component,n=t===`VideoManagerComponent`,r=this._context;if(this._stickyRelatedOnPage){F.event(t,`stickyRelatedOnPage`,n&&{device:r&&r.device,isDesktop:this._device}||{});return}let{playerElement:i}=this._checkPlayerSelectorOnPage(`stickyPlaylist`),{player:a}=this._checkPlayerSelectorOnPage(`stickyPlaylist`);a&&a.playerId&&i?(a=this._setPlaylistMediaIdWhenStationaryOnPage(e,a),this._createPlaylistPlayer(a,i)):Math.random()<.01&&setTimeout(()=>{F.event(t,`noStickyPlaylist`,n&&{vendor:`none`,device:r&&r.device,isDesktop:this._device}||{})},1e3)}_initializeRelatedPlayers(e){let t=new Map;for(let n=0;n<e.length;n++){let r=e[n],i=r.offsetParent,a=this._getEmbeddedPlayerType(r),o=this._getMediaId(r),s=this._getOrientation(r);if(i&&o){let e=(t.get(o)||0)+1;t.set(o,e),this._createRelatedPlayer(o,a,r,e,s)}}}},zt=class extends Rt{constructor(e,t){super(e,`ClsVideoInsertion`),this._videoConfig=e,this._clsOptions=t,s(this,`_IN_POST_SELECTOR`,`.adthrive-video-player`),s(this,`_WRAPPER_BAR_HEIGHT`,36),s(this,`_playersAddedFromPlugin`,[]),t.removeVideoTitleWrapper&&(this._WRAPPER_BAR_HEIGHT=0)}init(){this._initializePlayers()}_wrapVideoPlayerWithCLS(e,t,n=0,r=`horizontal`){if(e.parentNode){let i=e.offsetWidth,a=r===`vertical`;a&&this._device===`desktop`&&(i*=.5);let o=i*(a?16/9:9/16),s=this._createGenericCLSWrapper(o,t,n);return e.parentNode.insertBefore(s,e),s.appendChild(e),s}return null}_createGenericCLSWrapper(e,t,n){let r=document.createElement(`div`);return r.id=`cls-video-container-${t}`,r.className=`adthrive`,r.style.minHeight=`${e+n}px`,r}_getTitleHeight(){let e=document.createElement(`h3`);e.style.margin=`10px 0`,e.innerText=`Title`,e.style.visibility=`hidden`,document.body.appendChild(e);let t=window.getComputedStyle(e),n=parseInt(t.height,10),r=parseInt(t.marginTop,10),i=parseInt(t.marginBottom,10);return document.body.removeChild(e),Math.min(n+i+r,50)}_initializePlayers(){let e=document.querySelectorAll(this._IN_POST_SELECTOR);e.length&&this._initializeRelatedPlayers(e),this._shouldRunAutoplayPlayers()&&this._determineAutoplayPlayers(e)}_createStationaryRelatedPlayer(e,t,n){let r=this._device===`mobile`?[400,225]:[640,360],i=$.Video_In_Post_ClicktoPlay_SoundOn;if(t&&e.mediaOrPlaylistId){let a=`${e.mediaOrPlaylistId}_${n}`,o=this._wrapVideoPlayerWithCLS(t,a,0,e.orientation);this._playersAddedFromPlugin.push(e.mediaOrPlaylistId),o&&this._clsOptions.setInjectedVideoSlots({playerId:e.playerId,playerName:i,playerSize:r,element:o,type:`stationaryRelated`})}}_createStickyRelatedPlayer(e,t){if(this._videoConfig.shouldDisableStickyRelated)return;let n=this._device===`mobile`?[400,225]:[640,360],r=$.Video_Individual_Autoplay_SOff;if(this._stickyRelatedOnPage=!0,this._videoConfig.mobileStickyPlayerOnPage=this._device===`mobile`,this._videoConfig.collapsiblePlayerOnPage=!0,t&&e.position&&e.mediaId){let i=document.createElement(`div`);t.insertAdjacentElement(e.position,i);let a=this._getTitleHeight(),o=this._wrapVideoPlayerWithCLS(i,e.mediaId,this._WRAPPER_BAR_HEIGHT+a);this._playersAddedFromPlugin.push(e.mediaId),o&&this._clsOptions.setInjectedVideoSlots({playlistId:e.playlistId,playerId:e.playerId,playerSize:n,playerName:r,element:i,type:`stickyRelated`})}}_createPlaylistPlayer(e,t){let n=e.playlistId,r=this._device===`mobile`?$.Video_Coll_SOff_Smartphone:$.Video_Collapse_Autoplay_SoundOff,i=this._device===`mobile`?[400,225]:[640,360];this._videoConfig.mobileStickyPlayerOnPage=!0,this._videoConfig.collapsiblePlayerOnPage=!0;let a=document.createElement(`div`);t.insertAdjacentElement(e.position,a);let o=this._WRAPPER_BAR_HEIGHT;e.title&&(o+=this._getTitleHeight());let s=this._wrapVideoPlayerWithCLS(a,n,o);this._playersAddedFromPlugin.push(`playlist-${n}`),s&&this._clsOptions.setInjectedVideoSlots({playlistId:e.playlistId,playerId:e.playerId,playerSize:i,playerName:r,element:a,type:`stickyPlaylist`})}_isVideoAllowedOnPage(){let e=this._clsOptions.disableAds;if(e&&e.video){let t=``;e.reasons.has(`video_plugin`)?t=`video plugin`:e.reasons.has(`video_page`)&&(t=`command queue`);let n=t?`ClsVideoInsertionMigrated`:`ClsVideoInsertion`;return F.error(n,`isVideoAllowedOnPage`,Error(`DBP: Disabled by publisher via ${t||`other`}`)),!1}return!this._clsOptions.videoDisabledFromPlugin}};try{(()=>{let e=new c;
1307!e||!e.enabled||(e.siteAds&&Ft(e.siteAds),new jt(e,new Nt).start(),new zt(new fe(e),e).init())})()}catch(e){F.error(`CLS`,`pluginsertion-iife`,e),window.adthriveCLS&&(window.adthriveCLS.injectedFromPlugin=!1)}})();</script>
1307<script data-no-optimize="1" data-cfasync="false">(function () {var clsElements = document.querySelectorAll("script[id^='cls-']"); window.adthriveCLS && clsElements && clsElements.length === 0 ? window.adthriveCLS.injectedFromPlugin = false : ""; })();</script>
1307<script type="speculationrules"> 1308{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/generatepress_child/*","/wp-content/themes/generatepress/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} 1309</script>
1309 1310 <!-- Google tag (gtag.js) -->
vendor: 84 bytes, lines 1310-1311
1310 1311 <script type="text/javascript" src="https://www.googletagmanager.com/gtag/js?id=
1311UA-183435484-1
vendor: 21 bytes, lines 1311-1312
1311" defer></script> 1312
1312<script type="text/javascript" defer> 1313 window.dataLayer = window.dataLayer || []; 1314 function gtag(){dataLayer.push(arguments);} 1315 gtag('js', new Date()); 1316 1317 // ? multiple tracking ids 1318 gtag('config', 'UA-183435484-1', { 1319 'send_page_view': Boolean(), 1320 'anonymize_ip': Boolean(1) 1321 }); 1322 </script>
1322 1323 1324 <!-- Lasso tracking events - Performance --> 1325
1325<script type="text/javascript" src="https://js.getlasso.co/lasso-performance.min.js?ver=323" defer></script>
1325 1326
1326<script type="text/javascript" defer> 1327 document.addEventListener("DOMContentLoaded", function() { 1328 let lasso_event = setInterval(() => { 1329 if (typeof LassoEvents !== 'undefined') { 1330 clearInterval(lasso_event); 1331 LassoEvents.init({ 1332 'lssid': '142f78da127c15164f77730e24485d83', 1333 'lsid': 'ls-medifa0k5dkq7lf239cfqlos8h', 1334 'pid': '15231', 1335 'ipa': '1', 1336 'performance': '1', 1337 }); 1338 } 1339 }, 200); 1340 }); 1341 </script>
1341 1342
1342<script id="generate-a11y">!function(){"use strict";if("querySelector"in document&&"addEventListener"in window){var e=document.body;e.addEventListener("mousedown",function(){e.classList.add("using-mouse")}),e.addEventListener("keydown",function(){e.classList.remove("using-mouse")})}}();</script>
1342
1342<script> 1343 (function () { 1344 var c = document.body.className; 1345 c = c.replace(/woocommerce-no-js/, 'woocommerce-js'); 1346 document.body.className = c; 1347 })(); 1348 </script>
1348 1349 1350
1350<script type="text/javascript"> 1351 window.WPCOM_sharing_counts = {"https://www.cncsourced.com/how-we-do-product-reviews/":15231}; 1352 </script>
1352 1353
1353<script id="generate-offside-js-extra"> 1354var offSide = {"side":"right"}; 1355//# sourceURL=generate-offside-js-extra 1356</script>
vendor: 1 bytes, line 1356
1356
1357<script id="generate-offside-js" src="https://www.cncsourced.com/wp-content/plugins/gp-premium/menu-plus/functions/js/offside.min.js?ver=2.3.2"></script>
vendor: 1 bytes, line 1357
1357
1358<script id="somdn-script-js-extra"> 1359var somdn_script_params = {"somdn_qview_active":""}; 1360//# sourceURL=somdn-script-js-extra 1361</script>
vendor: 1 bytes, line 1361
1361
1362<script id="somdn-script-js" src="https://www.cncsourced.com/wp-content/plugins/download-now-for-woocommerce/assets/js/somdn_script.js?ver=1.0.0"></script>
vendor: 1 bytes, line 1362
1362
1363<script id="sourcebuster-js-js" src="https://c0.wp.com/p/woocommerce/8.6.1/assets/js/sourcebuster/sourcebuster.min.js"></script>
vendor: 1 bytes, line 1363
1363
1364<script id="wc-order-attribution-js-extra"> 1365var wc_order_attribution = {"params":{"lifetime":1.0e-5,"session":30,"ajaxurl":"https://www.cncsourced.com/wp-admin/admin-ajax.php","prefix":"wc_order_attribution_","allowTracking":true},"fields":{"source_type":"current.typ","referrer":"current_add.rf","utm_campaign":"current.cmp","utm_source":"current.src","utm_medium":"current.mdm","utm_content":"current.cnt","utm_id":"current.id","utm_term":"current.trm","session_entry":"current_add.ep","session_start_time":"current_add.fd","session_pages":"session.pgs","session_count":"udata.vst","user_agent":"udata.uag"}}; 1366//# sourceURL=wc-order-attribution-js-extra 1367</script>
vendor: 1 bytes, line 1367
1367
1368<script id="wc-order-attribution-js" src="https://c0.wp.com/p/woocommerce/8.6.1/assets/js/frontend/order-attribution.min.js"></script>
vendor: 1 bytes, line 1368
1368
1369<script id="daexthefu-main-js-before"> 1370window.DAEXTHEFU_PHPDATA = {"ajaxUrl":"https:\/\/www.cncsourced.com\/wp-admin\/admin-ajax.php","nonce":"2eeffccc8a","uniqueSubmission":0,"cookieExpiration":3153600000,"commentForm":0,"textareaCharacters":400,"textareaLabelPositiveFeedback":"We're glad that you liked the post! Let us know why (optional)","textareaLabelNegativeFeedback":"We're sorry to hear that. Please let us know how we can improve. (optional)"} 1371//# sourceURL=daexthefu-main-js-before 1372</script>
vendor: 1 bytes, line 1372
1372
1373<script id="daexthefu-main-js" src="https://www.cncsourced.com/wp-content/plugins/daext-helpful/public/assets/js/main.js?ver=1.08"></script>
vendor: 1 bytes, line 1373
1373
1374<script id="generate-menu-js-extra"> 1375var generatepressMenu = {"toggleOpenedSubMenus":"1","openSubMenuLabel":"Open Sub-Menu","closeSubMenuLabel":"Close Sub-Menu"}; 1376//# sourceURL=generate-menu-js-extra 1377</script>
vendor: 1 bytes, line 1377
1377
1378<script id="generate-menu-js" src="https://www.cncsourced.com/wp-content/themes/generatepress/assets/js/menu.min.js?ver=3.3.1"></script>
vendor: 1 bytes, line 1378
1378
1379<script id="generate-navigation-search-js-extra"> 1380var generatepressNavSearch = {"open":"Open Search Bar","close":"Close Search Bar"}; 1381//# sourceURL=generate-navigation-search-js-extra 1382</script>
vendor: 1 bytes, line 1382
1382
1383<script id="generate-navigation-search-js" src="https://www.cncsourced.com/wp-content/themes/generatepress/assets/js/navigation-search.min.js?ver=3.3.1"></script>
vendor: 1 bytes, line 1383
1383
1384<script data-wp-strategy="defer" defer id="woocommerce-analytics-client-js" src="https://www.cncsourced.com/wp-content/plugins/jetpack/jetpack_vendor/automattic/woocommerce-analytics/build/woocommerce-analytics-client.js?minify=false&ver=8d8bb846cc19ac858460"></script>
vendor: 1 bytes, line 1384
1384
1385<script id="advanced-ads-find-adblocker-js" src="https://www.cncsourced.com/wp-content/plugins/advanced-ads/admin/assets/js/advertisement.js"></script>
vendor: 1 bytes, line 1385
1385
1386<script>(function(d){var s=d.createElement("script");s.type="text/javascript";s.src="https://a.omappapi.com/app/js/api.min.js";s.async=true;s.id="omapi-script";d.getElementsByTagName("head")[0].appendChild(s);})(document);</script>
1386<script id="jetpack-stats-js-before"> 1387_stq = window._stq || []; 1388_stq.push([ "view", {"v":"ext","blog":"215645281","post":"15231","tz":"0","srv":"www.cncsourced.com","j":"1:16.2"} ]); 1389_stq.push([ "clickTrackerInit", "215645281", "15231" ]); 1390//# sourceURL=jetpack-stats-js-before 1391</script>
vendor: 1 bytes, line 1391
1391
1392<script data-wp-strategy="defer" defer fetchpriority="low" id="jetpack-stats-js" src="https://stats.wp.com/e-202640.js"></script>
vendor: 1 bytes, line 1392
1392
1393<script id="sharing-js-js-extra"> 1394var sharing_js_options = {"lang":"en","counts":"1","is_stats_active":"1"}; 1395//# sourceURL=sharing-js-js-extra 1396</script>
vendor: 1 bytes, line 1396
1396
1397<script id="sharing-js-js" src="https://c0.wp.com/p/jetpack/16.2/_inc/build/sharedaddy/sharing.min.js"></script>
vendor: 1 bytes, line 1397
1397
1398<script id="sharing-js-js-after"> 1399window.WPCOM_sharing_popups = window.WPCOM_sharing_popups || {}; 1400window.WPCOM_sharing_popups[ "facebook" ] = "menubar=1,resizable=1,width=600,height=400"; 1401window.WPCOM_sharing_popups = window.WPCOM_sharing_popups || {}; 1402window.WPCOM_sharing_popups[ "x" ] = "menubar=1,resizable=1,width=600,height=350"; 1403//# sourceURL=sharing-js-js-after 1404</script>
vendor: 1 bytes, line 1404
1404
1405<script id="wp-emoji-settings" type="application/json"> 1406{"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"concatemoji":"https://www.cncsourced.com/wp-includes/js/wp-emoji-release.min.js?ver=7.0.6"}} 1407</script>
vendor: 1 bytes, line 1407
1407
1408<script type="module"> 1409/*! This file is auto-generated */ 1410var e="script#wp-emoji-settings",t=document.querySelector(e);if(!(t instanceof HTMLScriptElement))throw new Error("Element missing: "+e);const r=JSON.parse(t.text),s=(window._wpemojiSettings=r,"wpEmojiSettingsSupports"),o=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(s,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const r=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===r[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,r){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!r(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,r){let a;const s=(a="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),o=(s.textBaseline="top",s.font="600 32px Arial",{});return e.forEach(e=>{o[e]=t(s,e,n,r)}),o}function a(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}r.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(s));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(o),u.toString(),c.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"});const a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=e=>{i(n=e.data),a.terminate(),t(n)})}catch(e){}i(n=f(o,u,c,p))}t(n)}).then(e=>{for(const n in e)r.supports[n]=e[n],r.supports.everything=r.supports.everything&&r.supports[n],"flag"!==n&&(r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&r.supports[n]);var t;r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&!r.supports.flag,r.supports.everything||((t=r.source||{}).concatemoji?a(t.concatemoji):t.wpemoji&&t.twemoji&&(a(t.twemoji),a(t.wpemoji)))}); 1411//# sourceURL=https://www.cncsourced.com/wp-includes/js/wp-emoji-loader.min.js 1412</script>
vendor: 1 bytes, line 1412
1412
1413<script>!function(){window.advanced_ads_ready_queue=window.advanced_ads_ready_queue||[],advanced_ads_ready_queue.push=window.advanced_ads_ready;for(var d=0,a=advanced_ads_ready_queue.length;d<a;d++)advanced_ads_ready(advanced_ads_ready_queue[d])}();</script>
1413
1413<script type="text/javascript"> 1414 (function() { 1415 window.wcAnalytics = window.wcAnalytics || {}; 1416 const wcAnalytics = window.wcAnalytics; 1417 1418 // Set the assets URL for webpack to find the split assets. 1419 wcAnalytics.assets_url = 'https://www.cncsourced.com/wp-content/plugins/jetpack/jetpack_vendor/automattic/woocommerce-analytics/src/../build/'; 1420 1421 // Set the REST API tracking endpoint URL. 1422 wcAnalytics.trackEndpoint = "https://www.cncsourced.com/wp-json/woocommerce-analytics/v1/track"; 1423 1424 // Set common properties for all events. 1425 wcAnalytics.commonProps = {"ui":0,"blog_id":215645281,"store_id":"00d2a3ea-3343-4384-9732-ad9efb6aad51","url":"https://www.cncsourced.com","woo_version":"8.6.1","wp_version":"7.0.6","store_admin":0,"device":"desktop","store_currency":"GBP","timezone":"+00:00","is_guest":1}; 1426 1427 // Set the event queue. 1428 wcAnalytics.eventQueue = []; 1429 1430 // Features. 1431 wcAnalytics.features = { 1432 ch: false, 1433 sessionTracking: false, 1434 proxy: false, 1435 }; 1436 1437 wcAnalytics.breadcrumbs = ["How We Do Product Reviews"]; 1438 1439 // Page context flags. 1440 wcAnalytics.pages = { 1441 isAccountPage: false, 1442 isCart: false, 1443 }; 1444 })(); 1445 </script>
1445 1446
1446<script type="text/javascript">var omapi_data = {"object_id":15231,"object_key":"page","object_type":"post","term_ids":[],"wp_json":"https:\/\/www.cncsourced.com\/wp-json","wc_active":true,"edd_active":false,"nonce":"c441dfd48b"};</script>
1446 1447
1447<script>!function(){"use strict";!function(e){if(-1===e.cookie.indexOf("__adblocker")){e.cookie="__adblocker=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/";var t=new XMLHttpRequest;t.open("GET","https://ads.adthrive.com/abd/abd.js",!0),t.onreadystatechange=function(){if(XMLHttpRequest.DONE===t.readyState)if(200===t.status){var a=e.createElement("script");a.innerHTML=t.responseText,e.getElementsByTagName("head")[0].appendChild(a)}else{var n=new Date;n.setTime(n.getTime()+3e5),e.cookie="__adblocker=true; expires="+n.toUTCString()+"; path=/"}},t.send()}}(document)}(); 1448</script>
1448<script>!function(){"use strict";var e;e=document,function(){var t,n;function r(){var t=e.createElement("script");t.src="https://cafemedia-com.videoplayerhub.com/galleryplayer.js",e.head.appendChild(t)}function a(){var t=e.cookie.match("(^|[^;]+)\\s*__adblocker\\s*=\\s*([^;]+)");return t&&t.pop()}function c(){clearInterval(n)}return{init:function(){var e;"true"===(t=a())?r():(e=0,n=setInterval((function(){100!==e&&"false"!==t||c(),"true"===t&&(r(),c()),t=a(),e++}),50))}}}().init()}(); 1449</script>
1449 1450</body> 1451</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.