PageSourceSearch

https://nobogoods.com/

html nobogoods.com collected 2026-10-08 13:56:56 UTC 145,692 bytes, 1,735 lines download raw bytes

1<!doctype html>
2<html lang="en-US" prefix="og: https://ogp.me/ns#">
3  <head>
4    
5    <meta charset="UTF-8">
6  	<meta name="viewport" content="width=device-width, initial-scale=1">
7	  
8	<!-- Set a Global Canonical URL for the Blog -->
9	
10
11    <!-- Favicon -->
12    <?
13  	?><link rel="apple-touch-icon" sizes="57x57" href="/apple-icon-57x57.png">
14    <link rel="apple-touch-icon" sizes="60x60" href="/apple-icon-60x60.png">
15    <link rel="apple-touch-icon" sizes="72x72" href="/apple-icon-72x72.png">
16    <link rel="apple-touch-icon" sizes="76x76" href="/apple-icon-76x76.png">
17    <link rel="apple-touch-icon" sizes="114x114" href="/apple-icon-114x114.png">
18    <link rel="apple-touch-icon" sizes="120x120" href="/apple-icon-120x120.png">
19    <link rel="apple-touch-icon" sizes="144x144" href="/apple-icon-144x144.png">
20    <link rel="apple-touch-icon" sizes="152x152" href="/apple-icon-152x152.png">
21    <link rel="apple-touch-icon" sizes="180x180" href="/apple-icon-180x180.png">
22    <link rel="icon" type="image/png" sizes="192x192"  href="/android-icon-192x192.png">
23    <link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
24    <link rel="icon" type="image/png" sizes="96x96" href="/favicon-96x96.png">
25    <link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
26    <meta name="msapplication-TileImage" content="/ms-icon-144x144.png">
27    
28    
29
30
31    <link rel="preconnect" href="https://fonts.googleapis.com">
32    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 
33    <link href="https://fonts.googleapis.com/css2?family=Roboto:ital,wght@400,700&family=Source+Serif+Pro:ital,ital,wght@400;700&display=swap" rel="stylesheet">
34
35    <link rel="preconnect" href="https://fonts.googleapis.com">
36    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
37    <link href="https://fonts.googleapis.com/css2?family=Outfit:[email protected]&display=swap" rel="stylesheet">   
38
39    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.7.1/css/all.min.css" crossorigin="anonymous" referrerpolicy="no-referrer" />
40
41    <!-- Scripts for Instant Tokens -->
42
43    
43<script src="https://s3.eu-central-1.wasabisys.com/instafeed/instafeed-v3.min.js"></script>
43
44    
44<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
44
45
46  	<style id="critical-css">@font-face{font-family:"Avenir-Bold";font-style:normal;font-weight:400;src:local("Avenir-Bold"),url("/mnt/BLOCKSTORAGE/home/1521999.cloudwaysapps.com/chsrqfvukx/public_html/wp-content/themes/nobo/ui/fonts/AvenirNextLTPro-Bold.woff2") format("woff2"),url("/mnt/BLOCKSTORAGE/home/1521999.cloudwaysapps.com/chsrqfvukx/public_html/wp-content/themes/nobo/ui/fonts/AvenirNextLTPro-Bold.woff") format("woff")}
47/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;-webkit-box-sizing:border-box;box-sizing:border-box}*,:after,:before{-webkit-box-sizing:inherit;box-sizing:inherit}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:0.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}input:focus,text-box:focus,textarea:focus{outline:none}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}*{font-family:"Outfit",sans-serif;color:#191919;font-size:22px;letter-spacing:0}@media (max-width:950px){*{font-size:18px}}#wpadminbar *{color:revert}::-moz-selection{color:#fff;background:#0d6797}::selection{color:#fff;background:#0d6797}a{-webkit-transition:all 420ms!important;transition:all 420ms!important}a:hover{-webkit-transition:all 420ms!important;transition:all 420ms!important}a{color:#0d6797;text-decoration:none}a:hover{color:#D3D7DD}h1{font-weight:800;margin:0 0 2rem;font-size:3rem;text-transform:uppercase}h1 span{color:#0d6797;font-weight:800;margin:0 0 2rem;font-size:3rem;text-transform:uppercase}@media (max-width:600px){h1{font-size:2.25rem}h1 span{font-size:2.25rem}}h2{font-weight:800;margin:0 0 2rem;font-size:2rem;text-transform:uppercase;margin-bottom:10px}h2 span{color:#0d6797;font-weight:800;margin:0 0 2rem;font-size:2rem;text-transform:uppercase}h3{font-weight:800;margin:0 0 2rem;font-size:1.8rem;text-transform:uppercase}h4{margin:0 0 2rem;font-size:1rem;text-transform:uppercase}p{line-height:1.2;margin:0 0 1.2rem}ol,ul{margin:0 0 1.2rem;padding-left:1.6rem}ol li,ul li{position:relative;line-height:1.2}.standard-content a:hover{text-decoration:underline;color:#0d6797}#page_wrapper{min-height:100vh;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;background-color:#D3D7DD;overflow:hidden}#page_content{-webkit-box-flex:1;-ms-flex:1;flex:1}.content_container{max-width:1500px;margin-left:auto;margin-right:auto;padding-left:3.5rem;padding-right:3.5rem;-webkit-transition:all 250ms;transition:all 250ms;z-index:3;position:relative}@media (max-width:1220px){.content_container{padding-left:2.2rem;padding-right:2.2rem}}@media (max-width:950px){.content_container{padding-left:1.4rem;padding-right:1.4rem}}.popup-out{position:fixed;top:0px;left:0px;right:0;bottom:0;background-color:rgba(0,0,0,0.8);z-index:999999;display:none}.age-verification-popup{position:relative;top:25vh;width:80vw;max-width:28rem;margin:auto;padding:60px 30px;background:#fff}.special-oval-box{width:100%;height:100%;border-radius:50%;display:table}.special-oval-inside{display:table-cell;vertical-align:middle;text-align:center}.title-popup{font-size:42px;color:#226E9E;font-weight:700;margin-bottom:30px;font-family:"Eczar";color:#191919;line-height:1.3}.title-popup span{color:#0d6797}.explanation-popup{max-width:260px;margin:0 auto 50px}.explanation-popup p{color:#191919;font-weight:700;text-transform:uppercase}.buttons-popup{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column;flex-flow:column;gap:25px}.buttons-popup .button{-webkit-box-flex:1;-ms-flex:1;flex:1;min-width:150px;margin-bottom:0!important}@media (max-width:950px){.age-verification-popup{top:10vh;width:90vw}.age-verification-popup .button{display:block;width:100%}.age-verification-popup .button:not(:last-child){margin-bottom:0.5rem}.title-popup{font-size:32px}}#announcementBar{background-color:#0d6797;padding:0.6rem;width:100%;position:absolute;display:none;top:0;left:0;z-index:100}#announcementBar p{line-height:1.2;font-size:0.8rem;font-weight:600;text-transform:uppercase;text-align:center;padding-left:50px;padding-right:50px;margin-bottom:0px;color:#fff;letter-spacing:0.1em}#announcementBar p a{color:#fff;text-decoration:underline}#announcementBar .announcement-exit{position:absolute;top:50%;right:35px;-webkit-transform:translateY(-50%);transform:translateY(-50%);color:#fff}.hero{position:relative;height:50vh;min-height:550px;max-height:500px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:#c4c4c4}.hero:after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:150px;background:center/100% 100% no-repeat url("data:image/svg+xml;utf8,			<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 150' preserveAspectRatio='none'>				<path fill='%23D3D7DD' d='M0,0 C480,150 960,150 1440,0 L1440,150 L0,150 Z'/>			</svg>");pointer-events:none;z-index:1}@media (max-width:950px){.hero:after{height:75px}}@media (max-width:600px){.hero:after{height:50px}}.hero__content{position:relative;z-index:2;text-align:left;max-width:1400px;margin:auto;width:100%;padding:0 15px}.hero__content h1,.hero__content p{color:white}.hero__content h1:last-child,.hero__content p:last-child{margin-bottom:0}.hero__content.light h1,.hero__content.light p{color:#fff}#site-navigation{width:100%;padding:40px 0;background:#191919;z-index:9999}
47@media (max-width:700px){#site-navigation{display:-ms-grid;display:grid;grid-template-areas:"top" "bottom";grid-auto-rows:auto 1fr auto;padding:40px 0 0}}#site-navigation.sticky{opacity:1!important;display:static!important}#site-navigation .nav_container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;max-width:1400px;margin:0 auto;padding:0 20px;width:100%;grid-area:top}@media (max-width:700px){#site-navigation .nav_container{margin-bottom:40px}}#site-navigation .nav_container .logo_link img{width:160px}@media (max-width:450px){#site-navigation .nav_container .logo_link img{width:125px}}@media (max-width:950px){#site-navigation .nav_container #primary-menu{display:none!important}}#site-navigation .nav_container #primary-menu{display:-webkit-box;display:-ms-flexbox;display:flex;margin:0;list-style:none;height:100%;-webkit-box-align:center;-ms-flex-align:center;align-items:center}#site-navigation .nav_container #primary-menu li{padding:0 20px;height:100%;-ms-flex-line-pack:center;align-content:center}@media (max-width:1090px){#site-navigation .nav_container #primary-menu li{padding:0 5px}}#site-navigation .nav_container #primary-menu li.current-menu-item>a{color:#0d6797!important}#site-navigation .nav_container #primary-menu li.menu-item-has-children{position:relative;padding-right:30px}#site-navigation .nav_container #primary-menu li.menu-item-has-children .drop_arrow{position:absolute;width:12px;height:12px;top:14px;right:10px;fill:white}#site-navigation .nav_container #primary-menu li.menu-item-has-children .sub-menu{z-index:-99999;opacity:0;display:none}#site-navigation .nav_container #primary-menu li.menu-item-has-children .sub-menu.hover_sub{position:absolute;z-index:99999;display:table;opacity:1;width:100%;min-width:300px;background:#D3D7DD;padding:10px 15px 10px;-webkit-box-shadow:0 12px 30px rgba(0,0,0,0.25);box-shadow:0 12px 30px rgba(0,0,0,0.25);border-radius:0;max-height:60vh;overflow:auto;border-bottom:10px solid #0d6797;list-style:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column;flex-flow:column;gap:10px}#site-navigation .nav_container #primary-menu li.menu-item-has-children .sub-menu li{text-align:left;line-height:1;padding:0}#site-navigation .nav_container #primary-menu li.menu-item-has-children .sub-menu li a{color:#191919;text-align:left;letter-spacing:0.15em;font-size:16px;font-weight:700;line-height:normal}#site-navigation .nav_container #primary-menu li a{-ms-flex-line-pack:center;align-content:center;display:block;height:100%;color:white;text-transform:uppercase;letter-spacing:0.15em;font-size:16px;font-weight:700;line-height:normal}#site-navigation .nav_container #primary-menu li a:hover{color:#0d6797}#site-navigation .nav_container #primary-menu li a:hover .drop_arrow{fill:#0d6797!important}#site-navigation .nav_container{}@media (max-width:950px){#site-navigation .nav_container #primary-menu-left{display:none}}#site-navigation .nav_container #primary-menu-left{display:-webkit-box;display:-ms-flexbox;display:flex;margin:0;list-style:none;height:100%;-webkit-box-align:center;-ms-flex-align:center;align-items:center}#site-navigation .nav_container #primary-menu-left li{padding:0 15px}#site-navigation .nav_container #primary-menu-left li.current-menu-item>a{color:#0d6797!important}#site-navigation .nav_container #primary-menu-left li.menu-item-has-children{position:relative;padding-right:30px}#site-navigation .nav_container #primary-menu-left li.menu-item-has-children .drop_arrow{position:absolute;width:12px;height:12px;top:14px;right:10px}#site-navigation .nav_container #primary-menu-left li.menu-item-has-children .sub-menu{z-index:-99999;opacity:0;display:none}#site-navigation .nav_container #primary-menu-left li.menu-item-has-children .sub-menu.hover_sub{position:absolute;z-index:99999;display:table;opacity:1;width:100%;padding:10px;background:#fff;border:3px solid #000;padding:10px 0!important}#site-navigation .nav_container #primary-menu-left li.menu-item-has-children .sub-menu li{padding:0 10px;text-align:center;line-height:1}#site-navigation .nav_container #primary-menu-left li.menu-item-has-children .sub-menu li a{font-size:0.85rem;line-height:1;text-align:center}#site-navigation .nav_container #primary-menu-left li a{color:#191919;text-transform:uppercase;font-weight:700;letter-spacing:0.1em;font-size:1.125rem}#site-navigation .nav_container #primary-menu-left li a:hover{color:#0d6797}#site-navigation .nav_container #primary-menu-left li a:hover .drop_arrow{fill:#0d6797!important}#site-navigation .nav_container{}#site-navigation .nav_container .hamburger_container{display:none;-webkit-box-align:center;-ms-flex-align:center;align-items:center}@media (max-width:950px){#site-navigation .nav_container .hamburger_container{display:-ms-gri
47d;display:grid}}#site-navigation .nav_container .hamburger_container .hamburger-lines{display:-ms-grid;display:grid;height:26px;width:32px;top:17px;left:20px;z-index:999;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;cursor:pointer;-webkit-transition:all 420ms!important;transition:all 420ms!important}#site-navigation .nav_container .hamburger_container .hamburger-lines:hover{-webkit-transition:all 420ms!important;transition:all 420ms!important}#site-navigation .nav_container .hamburger_container .hamburger-lines .line{display:block;height:4px;width:100%;border-radius:10px}#site-navigation .nav_container .hamburger_container .hamburger-lines .line.line1{-webkit-transform-origin:0% 0%;transform-origin:0% 0%;-webkit-transition:-webkit-transform 0.4s ease-in-out;transition:-webkit-transform 0.4s ease-in-out;transition:transform 0.4s ease-in-out;transition:transform 0.4s ease-in-out,-webkit-transform 0.4s ease-in-out;background:#0d6797}#site-navigation .nav_container .hamburger_container .hamburger-lines .line.line2{-webkit-transition:-webkit-transform 0.2s ease-in-out;transition:-webkit-transform 0.2s ease-in-out;transition:transform 0.2s ease-in-out;transition:transform 0.2s ease-in-out,-webkit-transform 0.2s ease-in-out;background:#0d6797}#site-navigation .nav_container .hamburger_container .hamburger-lines .line.line3{-webkit-transform-origin:0% 100%;transform-origin:0% 100%;-webkit-transition:-webkit-transform 0.4s ease-in-out;transition:-webkit-transform 0.4s ease-in-out;transition:transform 0.4s ease-in-out;transition:transform 0.4s ease-in-out,-webkit-transform 0.4s ease-in-out;background:#0d6797}#site-navigation .nav_container .hamburger_container .hamburger-lines:hover .line1{background:#D3D7DD}#site-navigation .nav_container .hamburger_container .hamburger-lines:hover .line2{background:#D3D7DD}#site-navigation .nav_container .hamburger_container .hamburger-lines:hover .line3{background:#D3D7DD}#site-navigation .nav_container .hamburger_container .hamburger-lines.menu_open:hover .line{background:white}#site-navigation .nav_container .hamburger_container .hamburger-lines.menu_open .line1{-webkit-transform:rotate(45deg);transform:rotate(45deg);background:#0d6797}#site-navigation .nav_container .hamburger_container .hamburger-lines.menu_open .line2{-webkit-transform:scaleY(0);transform:scaleY(0);background:#0d6797}#site-navigation .nav_container .hamburger_container .hamburger-lines.menu_open .line3{-webkit-transform:rotate(-45deg);transform:rotate(-45deg);background:#0d6797}#mobileMenu{position:fixed;top:0;left:0;bottom:0;right:0;width:100%;height:100%;background:#191919;opacity:0;display:none;overflow:scroll;-webkit-transition:all 420ms!important;transition:all 420ms!important}#mobileMenu:hover{-webkit-transition:all 420ms!important;transition:all 420ms!important}#mobileMenu.active{opacity:1;z-index:99;display:block;overflow:auto}#mobileMenu .menu_mobile_container{position:absolute;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}#mobileMenu #primary-menu{margin:0;padding:0;list-style:none;text-align:center;width:320px;gap:20px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column;flex-flow:column}#mobileMenu #primary-menu li{display:none;position:relative}#mobileMenu #primary-menu li.current-menu-item>a{color:#0d6797!important}#mobileMenu #primary-menu li a{font-size:1.25rem;color:#fff;text-transform:uppercase}#mobileMenu #primary-menu li a:hover{color:#0d6797}#mobileMenu #primary-menu li .mobile_drop{width:20px;height:20px;top:5px;right:absolute;right:50px;position:absolute}#mobileMenu #primary-menu li .mobile_drop .drop_arrow{width:20px;height:20px;cursor:pointer;z-index:9999;fill:#fff!important}#mobileMenu #primary-menu li .mobile_drop .drop_arrow.flip{-webkit-transform:rotate(180deg);transform:rotate(180deg)}#mobileMenu #primary-menu li .sub-menu{display:none;opacity:0;padding:0;margin-top:10px;margin-bottom:0}#mobileMenu #primary-menu li .sub-menu.open{display:block!important;opacity:1!important}#mobileMenu #primary-menu li .sub-menu li{padding:0 10px;text-align:center;line-height:1;margin-bottom:15px}#mobileMenu #primary-menu li .sub-menu li:last-of-type{margin-bottom:0}
47#mobileMenu #primary-menu li .sub-menu li a{color:#63D7FF;font-size:1rem;line-height:1;text-align:center}#mobileMenu #primary-menu li .sub-menu li a:hover{color:#0d6797}#mobileMenu{}#mobileMenu #primary-menu-left{margin:0;padding:0;list-style:none;text-align:center;width:350px}#mobileMenu #primary-menu-left li{display:none;position:relative}#mobileMenu #primary-menu-left li.current-menu-item>a{color:#0d6797!important}#mobileMenu #primary-menu-left li a{font-size:2rem;color:#fff;text-transform:uppercase}#mobileMenu #primary-menu-left li a:hover{color:#0d6797}#mobileMenu #primary-menu-left li .mobile_drop{width:20px;height:20px;top:25px;right:absolute;right:0;position:absolute}#mobileMenu #primary-menu-left li .mobile_drop .drop_arrow{width:20px;height:20px;cursor:pointer;z-index:9999;fill:#fff!important}#mobileMenu #primary-menu-left li .mobile_drop .drop_arrow.flip{-webkit-transform:rotate(180deg);transform:rotate(180deg)}#mobileMenu #primary-menu-left li .sub-menu{display:none;opacity:0}#mobileMenu #primary-menu-left li .sub-menu.open{display:block!important;opacity:1!important}#mobileMenu #primary-menu-left li .sub-menu li{padding:0 10px;text-align:center;line-height:1}#mobileMenu #primary-menu-left li .sub-menu li a{font-size:0.85rem;line-height:1;text-align:center}#mobileMenu{}.location-selector{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;-ms-flex-wrap:wrap;flex-wrap:wrap;overflow:visible;grid-area:bottom}@media (max-width:700px){#site-navigation .nav_container{-ms-grid-row:1;-ms-grid-column:1}.location-selector{-ms-grid-row:2;-ms-grid-column:1}}@media (max-width:1200px){.location-selector{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column;flex-flow:column}}.dropdown-wrapper{position:relative;z-index:3}@media (max-width:700px){.dropdown-wrapper{width:100%}}#locations-dropdown{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.locations-trigger{position:relative;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:15px 110px 15px 80px;background:#D3D7DD;border:0;text-transform:uppercase;font-weight:700;font-size:16px;letter-spacing:0.15em;cursor:pointer;line-height:1.2;outline:none}@media (max-width:1200px){.locations-trigger{width:100%;padding:15px 40px 15px}}.locations-trigger{}.locations-trigger:after{content:"";position:absolute;inset:0 0 0 auto;width:40px;background:#0d6797;pointer-events:none}@media (max-width:1200px){.locations-trigger:after{background-color:transparent}}.locations-trigger .chev{position:absolute;right:60px;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:20px;height:20px;background:no-repeat center/20px 20px url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'><path fill='black' d='M31.5 192.5c9.4-9.4 24.6-9.4 33.9 0L160 287l94.6-94.5c9.4-9.4 24.6-9.4 34 0s9.3 24.6 0 34L177 338.6c-9.4 9.4-24.6 9.4-34 0L31.5 226.5c-9.4-9.4-9.4-24.6 0-34z'/></svg>");-webkit-transition:-webkit-transform 0.2s ease;transition:-webkit-transform 0.2s ease;transition:transform 0.2s ease;transition:transform 0.2s ease,-webkit-transform 0.2s ease}@media (max-width:700px){.locations-trigger .chev{right:15px}}.dropdown-wrapper.open .locations-trigger .chev{-webkit-transform:translateY(-50%) rotate(180deg);transform:translateY(-50%) rotate(180deg)}.locations-menu{position:absolute;top:calc(100% - 0px);left:100px;z-index:10;min-width:360px;background:#D3D7DD;padding:20px 15px 10px;-webkit-box-shadow:0 12px 30px rgba(0,0,0,0.25);box-shadow:0 12px 30px rgba(0,0,0,0.25);border-radius:0;max-height:60vh;overflow:auto;border-bottom:10px solid #0d6797}@media (max-width:700px){.locations-menu{width:100%;left:0}}.locations-menu .option{display:block;width:100%;background:transparent;border:0;text-align:left;padding:8px 4px;
47cursor:pointer;color:#111;text-transform:uppercase;font-weight:800;letter-spacing:0.18em;font-size:18px;line-height:1.6;font-family:"Outfit",sans-serif}.locations-menu .option:hover{color:#0d6797}.locations-menu .option.is-active{color:#0d6797}.selected-hours{position:relative;z-index:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:0 40px 0 0;background:#0d6797;white-space:nowrap;text-transform:uppercase;font-weight:600;font-size:16px;letter-spacing:1.5px}.selected-hours span,.selected-hours strong{color:#fff}.selected-hours strong{margin-right:6px}.selected-hours{}.selected-hours:after{content:"";position:absolute;top:0;right:-15px;height:calc(100% + 0px);width:20px;background:#fff;pointer-events:none}@media (max-width:1200px){.selected-hours:after{display:none}}@media (max-width:1200px){.selected-hours{width:100%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:0}}@media (max-width:700px){.selected-hours{display:none!important}}.selected-hours{}.selected-hours.is-collapsed{background:transparent;border-right:0;padding:0;width:0}.selected-hours{}.selected-hours .sh-content{display:inline-block;-webkit-transform:scaleX(0);transform:scaleX(0);-webkit-transform-origin:0 50%;transform-origin:0 50%;opacity:0;-webkit-transition:opacity 0.2s ease,-webkit-transform 0.35s ease;transition:opacity 0.2s ease,-webkit-transform 0.35s ease;transition:transform 0.35s ease,opacity 0.2s ease;transition:transform 0.35s ease,opacity 0.2s ease,-webkit-transform 0.35s ease;will-change:transform}.selected-hours.is-open .sh-content{-webkit-transform:scaleX(1);transform:scaleX(1);opacity:1}.location-selector,.location-selector #selected-hours,.location-selector #selected-hours span,.location-selector #selected-hours strong,.location-selector .locations-menu,.location-selector .locations-menu .option,.location-selector .locations-trigger,.location-selector .locations-trigger .label{text-transform:uppercase;letter-spacing:0.15em;font-size:16px;font-weight:700;line-height:normal;font-family:"Outfit",sans-serif}#site-navigation.is-fixed{position:fixed;top:0;left:0;right:0;z-index:1000}#nav-spacer{height:0}body.admin-bar #site-navigation.is-fixed{top:32px}@media (max-width:782px){body.admin-bar #site-navigation.is-fixed{top:46px}}</style>
48<!-- Search Engine Optimization by Rank Math - https://rankmath.com/ -->
49<title>Michigan, Illinois, Colorado Cannabis Dispensaries - NOBO Cannabis</title>
50<meta name="description" content="Welcome to NOBO, with dispensaries and cannabis products of the highest caliber in Michigan, Illinois, and Colorado."/>
51<meta name="robots" content="follow, index, max-snippet:-1, max-video-preview:-1, max-image-preview:large"/>
52<link rel="canonical" href="https://nobogoods.com/" />
53<meta property="og:locale" content="en_US" />
54<meta property="og:type" content="website" />
55<meta property="og:title" content="Michigan, Illinois, Colorado Cannabis Dispensaries - NOBO Cannabis" />
56<meta property="og:description" content="Welcome to NOBO, with dispensaries and cannabis products of the highest caliber in Michigan, Illinois, and Colorado." />
57<meta property="og:url" content="https://nobogoods.com/" />
58<meta property="og:site_name" content="NOBO Dispensary" />
59<meta property="og:updated_time" content="2026-08-31T12:15:10-04:00" />
60<meta property="og:image" content="https://nobogoods.com/wp-content/uploads/2025/11/nobo-favicon-and-social-share_1-1024x538.png" />
61<meta property="og:image:secure_url" content="https://nobogoods.com/wp-content/uploads/2025/11/nobo-favicon-and-social-share_1-1024x538.png" />
62<meta property="og:image:width" content="1024" />
63<meta property="og:image:height" content="538" />
64<meta property="og:image:alt" content="Home" />
65<meta property="og:image:type" content="image/png" />
66<meta property="article:published_time" content="2022-08-26T05:24:40-04:00" />
67<meta property="article:modified_time" content="2026-08-31T12:15:10-04:00" />
68<meta name="twitter:card" content="summary_large_image" />
69<meta name="twitter:title" content="Michigan, Illinois, Colorado Cannabis Dispensaries - NOBO Cannabis" />
70<meta name="twitter:description" content="Welcome to NOBO, with dispensaries and cannabis products of the highest caliber in Michigan, Illinois, and Colorado." />
71<meta name="twitter:image" content="https://nobogoods.com/wp-content/uploads/2025/11/nobo-favicon-and-social-share_1-1024x538.png" />
72<meta name="twitter:label1" content="Written by" />
73<meta name="twitter:data1" content="admin" />
74<meta name="twitter:label2" content="Time to read" />
75<meta name="twitter:data2" content="Less than a minute" />
76<script type="application/ld+json" class="rank-math-schema">{"@context":"https://schema.org","@graph":[{"@type":["Person","Organization"],"@id":"https://nobogoods.com/#person","name":"NOBO","logo":{"@type":"ImageObject","@id":"https://nobogoods.com/#logo","url":"https://nobogoods.com/wp-content/uploads/2025/11/nobo-favicon-and-social-share-01-e1762399201417.png","contentUrl":"https://nobogoods.com/wp-content/uploads/2025/11/nobo-favicon-and-social-share-01-e1762399201417.png","caption":"NOBO Dispensary","inLanguage":"en-US","width":"112","height":"112"},"image":{"@type":"ImageObject","@id":"https://nobogoods.com/#logo","url":"https://nobogoods.com/wp-content/uploads/2025/11/nobo-favicon-and-social-share-01-e1762399201417.png","contentUrl":"https://nobogoods.com/wp-content/uploads/2025/11/nobo-favicon-and-social-share-01-e1762399201417.png","caption":"NOBO Dispensary","inLanguage":"en-US","width":"112","height":"112"}},{"@type":"WebSite","@id":"https://nobogoods.com/#website","url":"https://nobogoods.com","name":"NOBO Dispensary","alternateName":"NOBO INC","publisher":{"@id":"https://nobogoods.com/#person"},"inLanguage":"en-US","potentialAction":{"@type":"SearchAction","target":"https://nobogoods.com/?s={search_term_string}","query-input":"required name=search_term_string"}},{"@type":"ImageObject","@id":"https://nobogoods.com/wp-content/uploads/2025/11/nobo-favicon-and-social-share_1-scaled.png","url":"https://nobogoods.com/wp-content/uploads/2025/11/nobo-favicon-and-social-share_1-scaled.png","width":"2560","height":"1344","inLanguage":"en-US"},{"@type":"WebPage","@id":"https://nobogoods.com/#webpage","url":"https://nobogoods.com/","name":"Michigan, Illinois, Colorado Cannabis Dispensaries - NOBO Cannabis","datePublished":"2022-08-26T05:24:40-04:00","dateModified":"2026-08-31T12:15:10-04:00","about":{"@id":"https://nobogoods.com/#person"},"isPartOf":{"@id":"https://nobogoods.com/#website"},"primaryImageOfPage":{"@id":"https://nobogoods.com/wp-content/uploads/2025/11/nobo-favicon-and-social-share_1-scaled.png"},"inLanguage":"en-US"},{"@type":"Person","@id":"https://nobogoods.com/#author","name":"admin","image":{"@type":"ImageObject","@id":"https://secure.gravatar.com/avatar/f132ba1b1a5a3d6f3cb6529cef071eedff6082ffed6f37fb7fbbf8dde5dedb6e?s=96&amp;d=mm&amp;r=g","url":"https://secure.gravatar.com/avatar/f132ba1b1a5a3d6f3cb6529cef071eedff6082ffed6f37fb7fbbf8dde5dedb6e?s=96&amp;d=mm&amp;r=g","caption":"admin","inLanguage":"en-US"},"sameAs":["https://devsquad.champawesome.com"]},{"@type":"Article","headline":"Michigan, Illinois, Colorado Cannabis Dispensaries - NOBO Cannabis","datePublished":"2022-08-26T05:24:40-04:00","dateModified":"2026-08-31T12:15:10-04:00","author":{"@id":"https://nobogoods.com/#author","name":"admin"},"publisher":{"@id":"https://nobogoods.com/#person"},"description":"Welcome to NOBO, with dispensaries and cannabis products of the highest caliber in Michigan, Illinois, and Colorado.","name":"Michigan, Illinois, Colorado Cannabis Dispensaries - NOBO Cannabis","@id":"https://nobogoods.com/#richSnippet","isPartOf":{"@id":"https://nobogoods.com/#webpage"},"image":{"@id":"https://nobogoods.com/wp-content/uploads/2025/11/nobo-favicon-and-social-share_1-scaled.png"},"inLanguage":"en-US","mainEntityOfPage":{"@id":"https://nobogoods.com/#webpage"}}]}</script>
76
77<!-- /Rank Math WordPress SEO plugin -->
78
79<link rel='dns-prefetch' href='//cdnjs.cloudflare.com' />
80<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://nobogoods.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fnobogoods.com%2F" />
81<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://nobogoods.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fnobogoods.com%2F&#038;format=xml" />
82<style id="wp-img-auto-sizes-contain-inline-css">
83img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px}
84/*# sourceURL=wp-img-auto-sizes-contain-inline-css */
85</style>
86<style id="wp-emoji-styles-inline-css">
87
88	img.wp-smiley, img.emoji {
89		display: inline !important;
90		border: none !important;
91		box-shadow: none !important;
92		height: 1em !important;
93		width: 1em !important;
94		margin: 0 0.07em !important;
95		vertical-align: -0.1em !important;
96		background: none !important;
97		padding: 0 !important;
98	}
99/*# sourceURL=wp-emoji-styles-inline-css */
100</style>
101<style id="wp-block-library-inline-css">
102: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;
102--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;word-break:normal!important}.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],[style*=";border-color"],[style*="; border-color"]){border-style:solid}html :where([style^=border-top-color],[style*=";border-top-color"],[style*="; border-top-color"]){border-top-style:solid}html :where([style^=border-right-color],[style*=";border-right-color"],[style*="; border-right-color"]){border-right-style:solid}html :where([style^=border-bottom-color],[style*=";border-bottom-color"],[style*="; border-bottom-color"]){border-bottom-style:solid}html :where([style^=border-left-color],[style*=";border-left-color"],[style*="; border-left-color"]){border-left-style:solid}html :where([style^=border-width],[style*=";border-width"],[style*="; border-width"]){border-style:solid}html :where([style^=border-top-width],[style*=";border-top-width"],[style*="; border-top-width"]){border-top-style:solid}html :where([style^=border-right-width],[style*=";border-right-width"],[style*="; border-right-width"]){border-right-style:solid}html :where([style^=border-bottom-width],[style*=";border-bottom-width"],[style*="; border-bottom-width"]){border-bottom-style:solid}html :where([style^=border-left-width],[style*=";border-left-width"],[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}}
103
104/*# sourceURL=/wp-includes/css/dist/block-library/common.min.css */
105</style>
106<style id="classic-theme-styles-inline-css">
107/*! This file is auto-generated */
108.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}
109/*# sourceURL=/wp-includes/css/classic-themes.min.css */
110</style>
111
112<style id="global-styles-inline-css">
113: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--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,
1130) 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);}.wp-block-button{--wp--preset--dimension--25: 25%;--wp--preset--dimension--50: 50%;--wp--preset--dimension--75: 75%;--wp--preset--dimension--100: 100%;}: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-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-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-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;}
113.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;}
114/*# sourceURL=global-styles-inline-css */
115</style>
116
117<link rel="preload" as="style" onload="this.onload=null;this.rel='stylesheet'" id="theme-style-css" href="https://nobogoods.com/wp-content/themes/nobo/style.css?ver=7.1.3" media="all" />
118<link rel="preload" as="style" onload="this.onload=null;this.rel='stylesheet'" id="main-style-css" href="https://nobogoods.com/wp-content/themes/nobo/ui/css/do-not-edit.min.css?ver=1788205258" media="all" />
119<link rel="preload" as="style" onload="this.onload=null;this.rel='stylesheet'" id="prism-style-css" href="https://nobogoods.com/wp-content/themes/nobo/js/vendors/prism.css?ver=7.1.3" media="all" />
120<link rel="preload" as="style" onload="this.onload=null;this.rel='stylesheet'" id="fancybox-style-css" href="https://nobogoods.com/wp-content/themes/nobo/js/vendors/fancybox.css?ver=7.1.3" media="all" />
121<link rel='stylesheet' id='fa-main-css' href='https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/fontawesome.min.css?ver=7.1.3' media='all' />
122<link rel='stylesheet' id='fa-brands-css' href='https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/brands.min.css?ver=7.1.3' media='all' />
123<script id="breeze-prefetch-js-extra">
124var breeze_prefetch = {"local_url":"https://nobogoods.com","ignore_remote_prefetch":"1","ignore_list":["wp-admin","wp-login.php"]};
125//# sourceURL=breeze-prefetch-js-extra
126</script>
vendor: 1 bytes, line 126
126
127<script id="breeze-prefetch-js" src="https://nobogoods.com/wp-content/plugins/breeze/assets/js/js-front-end/breeze-prefetch-links.min.js?ver=2.6.1"></script>
vendor: 1 bytes, line 127
127
128<script id="jquery-core-js" src="https://nobogoods.com/wp-includes/js/jquery/jquery.min.js?ver=3.7.1"></script>
vendor: 1 bytes, line 128
128
129<script id="jquery-migrate-js" src="https://nobogoods.com/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1"></script>
vendor: 1 bytes, line 129
129
130<script id="prism-script-js" src="https://nobogoods.com/wp-content/themes/nobo/js/vendors/prism.js?ver=7.1.3"></script>
vendor: 1 bytes, line 130
130
131<script id="fancybox-script-js" src="https://nobogoods.com/wp-content/themes/nobo/js/vendors/fancybox.js?ver=7.1.3"></script>
131
132<link rel="https://api.w.org/" href="https://nobogoods.com/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://nobogoods.com/wp-json/wp/v2/pages/7" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://nobogoods.com/xmlrpc.php?rsd" />
133<meta name="generator" content="WordPress 7.1.3" />
134<link rel='shortlink' href='https://nobogoods.com/' />
135<meta name="ti-site-data" content="eyJyIjoiMTowITc6MCEzMDowIiwibyI6Imh0dHBzOlwvXC9ub2JvZ29vZHMuY29tP3RpLW9ubGluZS11c2Vycy1nb29nbGU9MSZhbXA7cD0lMkYmYW1wO193cG5vbmNlPWQyMGM5MDBmMTIifQ==" /><link rel="icon" href="https://nobogoods.com/wp-content/uploads/2025/10/cropped-cropped-nobo-favicon-01-32x32.png" sizes="32x32" />
136<link rel="icon" href="https://nobogoods.com/wp-content/uploads/2025/10/cropped-cropped-nobo-favicon-01-192x192.png" sizes="192x192" />
137<link rel="apple-touch-icon" href="https://nobogoods.com/wp-content/uploads/2025/10/cropped-cropped-nobo-favicon-01-180x180.png" />
138<meta name="msapplication-TileImage" content="https://nobogoods.com/wp-content/uploads/2025/10/cropped-cropped-nobo-favicon-01-270x270.png" />
139<style id="wp-custom-css">
140#site-navigation{
141	padding-top: 0;
142}
143.nav_container{
144	margin-top: 40px !important;
145}
146.location-selector{
147	background: #393939;
148}
149
150#location-team{
151	display: none;
152}
153#announcementBar p a {
154	font-size:0.8rem !important;
155}
156
157body.home .recent-posts {
158	padding:0px !important;
159}
160body.home .recent-posts .content_container {
161	display:none !important;
162}
163/* Menu Updates */
164
165body.menu-denver-co .hero, body.menu-benton-harbor-mi .hero, body.menu-edwardsburg-mi .hero, body.menu-lakemoor-il .hero, body.menu-lakemoor-il .hero, body.menu-south-haven-mi .hero, body.menu-muskegon-mi .hero {
166	height:auto !important;
167	min-height:300px !important;
168	max-height:auto !important;
169}
170body.menu-denver-co .hero .hero__content, body.menu-benton-harbor-mi .hero .hero__content, body.menu-edwardsburg-mi .hero .hero__content, body.menu-lakemoor-il .hero .hero__content, body.menu-south-haven-mi .hero .hero__content, body.menu-lakemoor-il .hero .hero__content, body.menu-muskegon-mi .hero .hero__content {
171	margin-top:50px !important;
172}
173body.menu-denver-co section.standard-content, 
174body.menu-benton-harbor-mi section.standard-content, 
175body.menu-edwardsburg-mi section.standard-content, 
176body.menu-lakemoor-il section.standard-content, 
177body.menu-lakemoor-il section.standard-content, 
178body.menu-south-haven-mi section.standard-content, body.menu-muskegon-mi section.standard-content {
179	padding-top:0px !important;
180}
181
182@media(max-width:500px) {
183	body.menu-denver-co .hero,
184	body.menu-benton-harbor-mi .hero, 
185	body.menu-edwardsburg-mi .hero, 
186	body.menu-lakemoor-il .hero, 
187	body.menu-lakemoor-il .hero, 
188	body.menu-south-haven-mi .hero, body.menu-muskegon-mi .hero  {
189		min-height:220px !important;
190	}
191}
192
193body.home #locations-map .content_container .left .featured-wrapper .featured-location h4 {
194	font-size:32px !important;
195}
196body.home #locations-map .content_container .left .featured-wrapper .featured-location a {
197	font-size:20px !important;
198}
199</style>
200
201    <!-- Google tag (gtag.js) -->
vendor: 64 bytes, line 201
201 <script async src="https://www.googletagmanager.com/gtag/js?id=
201G-3ECMBDR67D
vendor: 12 bytes, line 201
201"></script> 
201<script> 
vendor: 127 bytes, line 201
201window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', '
201G-3ECMBDR67D
vendor: 4 bytes, line 201
201'); 
201</script>
201
202
203<!-- Google Tag Manager -->
204<script>
vendor: 331 bytes, lines 204-208
204(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
205new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
206j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
207'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
208})(window,document,'script','dataLayer','
208GTM-WPD7GXFF
vendor: 3 bytes, line 208
208');
208</script>
208
209<!-- End Google Tag Manager -->
210
211
212  <link rel='stylesheet' id='leaflet_stylesheet-css' href='https://unpkg.com/[email protected]/dist/leaflet.css' media='' />
213
214</head>
215  <body class="home wp-singular page-template page-template-templates page-template-page-sections page-template-templatespage-sections-php page page-id-7 wp-custom-logo wp-theme-nobo">
216    <div id="page_wrapper">   	  <div id="announcementBar">
217  <p>Rewards That Pay! Earn 5% Cash Back + Exclusive Member Perks – <a href="https://nobogoods.com/rewards/">Join NOBO Rewards!</a>.</p>
218  <a href="javascript:;" role="button" aria-label="announcement bar exit" class="announcement-exit">
219		<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 32 32"><title>cross</title><path fill="rgba(255, 255, 255, 0.8)" d="M31.708 25.708c-0-0-0-0-0-0l-9.708-9.708 9.708-9.708c0-0 0-0 0-0 0.105-0.105 0.18-0.227 0.229-0.357 0.133-0.356 0.057-0.771-0.229-1.057l-4.586-4.586c-0.286-0.286-0.702-0.361-1.057-0.229-0.13 0.048-0.252 0.124-0.357 0.228 0 0-0 0-0 0l-9.708 9.708-9.708-9.708c-0-0-0-0-0-0-0.105-0.104-0.227-0.18-0.357-0.228-0.356-0.133-0.771-0.057-1.057 0.229l-4.586 4.586c-0.286 0.286-0.361 0.702-0.229 1.057 0.049 0.13 0.124 0.252 0.229 0.357 0 0 0 0 0 0l9.708 9.708-9.708 9.708c-0 0-0 0-0 0-0.104 0.105-0.18 0.227-0.229 0.357-0.133 0.355-0.057 0.771 0.229 1.057l4.586 4.586c0.286 0.286 0.702 0.361 1.057 0.229 0.13-0.049 0.252-0.124 0.357-0.229 0-0 0-0 0-0l9.708-9.708 9.708 9.708c0 0 0 0 0 0 0.105 0.105 0.227 0.18 0.357 0.229 0.356 0.133 0.771 0.057 1.057-0.229l4.586-4.586c0.286-0.286 0.362-0.702 0.229-1.057-0.049-0.13-0.124-0.252-0.229-0.357z"></path></svg>
220	</a>
221</div>
222<script>window.enableAnnouncementBar = true;</script>
222
223<nav role="navigation" aria-label="Main Menu" id="site-navigation" class="main-navigation main_nav">
224    <div class="location-selector">
225    <div class="dropdown-wrapper js-locations">
226      <!-- Trigger that looks like the select -->
227      <button id="locations-trigger"
228              class="locations-trigger"
229              type="button"
230              aria-haspopup="listbox"
231              aria-expanded="false"
232              aria-controls="locations-menu">
233        <span class="label" data-default="LOCATION">LOCATION</span>
234        <span class="chev" aria-hidden="true"></span>
235      </button>
236
237      <!-- Keep the original select for data, but hide it visually -->
238      <select id="locations-dropdown" name="locations" aria-hidden="true" tabindex="-1">
239        <option value="" selected>LOCATION</option>
240                  <option value="807">
241            Benton Harbor, MI          </option>
242                  <option value="819">
243            Denver, CO          </option>
244                  <option value="809">
245            Edwardsburg, MI          </option>
246                  <option value="817">
247            Lakemoor, IL          </option>
248                  <option value="813">
249            Muskegon, MI          </option>
250                  <option value="1167">
251            NE Minneapolis, MN          </option>
252                  <option value="815">
253            South Haven, MI          </option>
254              </select>
255
256      <!-- Custom menu (built from the select by JS) -->
257      <div class="locations-menu" id="locations-menu" role="listbox" hidden></div>
258    </div>
259
260    <!-- Your hours pill -->
261    <div id="selected-hours" class="selected-hours is-collapsed"></div>
262  </div>
263    <div class="nav_container">
264
265  <a href="/" class="logo_link standard"><img src="https://nobogoods.com/wp-content/uploads/2025/12/NOBO-Horizontal-1.png"></a>			<div class="menu-primary-nav-container"><ul id="primary-menu" class="menu main_menu"><li id="menu-item-1211" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1211"><a href="#" class="menu-link" data-requires-location="1" data-location-link="main_shop_link" data-has-link="0">Menu</a></li>
266<li id="menu-item-787" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-787"><a href="/rewards/">Rewards</a></li>
267<li id="menu-item-785" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-785"><a href="/brands/">Our Brands</a></li>
268<li id="menu-item-786" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-786"><a href="#">Learn</a><span class='mobile_drop'>  <svg class='drop_arrow' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' width='512' height='298' shape-rendering='geometricPrecision' text-rendering='geometricPrecision' image-rendering='optimizeQuality' fill-rule='evenodd' clip-rule='evenodd' viewBox='0 0 512 298.04'><path fill-rule='nonzero' d='M12.08 70.78c-16.17-16.24-16.09-42.54.15-58.7 16.25-16.17 42.54-16.09 58.71.15L256 197.76 441.06 12.23c16.17-16.24 42.46-16.32 58.71-.15 16.24 16.16 16.32 42.46.15 58.7L285.27 285.96c-16.24 16.17-42.54 16.09-58.7-.15L12.08 70.78z'/></svg></span>
269<ul class="sub-menu">
270	<li id="menu-item-1023" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1023"><a href="/blog/">Blog</a></li>
271	<li id="menu-item-1185" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1185"><a href="https://nobogoods.com/faqs/">FAQs</a></li>
272</ul>
273</li>
274<li id="menu-item-739" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-739"><a href="https://nobogoods.com/about/">About</a><span class='mobile_drop'>  <svg class='drop_arrow' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' width='512' height='298' shape-rendering='geometricPrecision' text-rendering='geometricPrecision' image-rendering='optimizeQuality' fill-rule='evenodd' clip-rule='evenodd' viewBox='0 0 512 298.04'><path fill-rule='nonzero' d='M12.08 70.78c-16.17-16.24-16.09-42.54.15-58.7 16.25-16.17 42.54-16.09 58.71.15L256 197.76 441.06 12.23c16.17-16.24 42.46-16.32 58.71-.15 16.24 16.16 16.32 42.46.15 58.7L285.27 285.96c-16.24 16.17-42.54 16.09-58.7-.15L12.08 70.78z'/></svg></span>
275<ul class="sub-menu">
276	<li id="menu-item-1020" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1020"><a href="https://nobogoods.com/contact/">Contact</a></li>
277	<li id="menu-item-1021" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1021"><a target="_blank" href="https://www.growray.com/">GrowRay</a></li>
278</ul>
279</li>
280<li id="menu-item-1024" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-1024"><a href="/locations/">Locations</a><span class='mobile_drop'>  <svg class='drop_arrow' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' width='512' height='298' shape-rendering='geometricPrecision' text-rendering='geometricPrecision' image-rendering='optimizeQuality' fill-rule='evenodd' clip-rule='evenodd' viewBox='0 0 512 298.04'><path fill-rule='nonzero' d='M12.08 70.78c-16.17-16.24-16.09-42.54.15-58.7 16.25-16.17 42.54-16.09 58.71.15L256 197.76 441.06 12.23c16.17-16.24 42.46-16.32 58.71-.15 16.24 16.16 16.32 42.46.15 58.7L285.27 285.96c-16.24 16.17-42.54 16.09-58.7-.15L12.08 70.78z'/></svg></span>
281<ul class="sub-menu">
282	<li id="menu-item-1693" class="menu-item menu-item-type-post_type menu-item-object-location menu-item-1693"><a href="https://nobogoods.com/locations/benton-harbor-mi/">Benton Harbor, MI</a></li>
283	<li id="menu-item-1692" class="menu-item menu-item-type-post_type menu-item-object-location menu-item-1692"><a href="https://nobogoods.com/locations/edwardsburg-mi/">Edwardsburg, MI</a></li>
284	<li id="menu-item-1690" class="menu-item menu-item-type-post_type menu-item-object-location menu-item-1690"><a href="https://nobogoods.com/locations/muskegon-mi/">Muskegon, MI</a></li>
285	<li id="menu-item-1689" class="menu-item menu-item-type-post_type menu-item-object-location menu-item-1689"><a href="https://nobogoods.com/locations/south-haven-mi/">South Haven, MI</a></li>
286	<li id="menu-item-1687" class="menu-item menu-item-type-post_type menu-item-object-location menu-item-1687"><a href="https://nobogoods.com/locations/denver-co/">Denver, CO</a></li>
287	<li id="menu-item-1688" class="menu-item menu-item-type-post_type menu-item-object-location menu-item-1688"><a href="https://nobogoods.com/locations/lakemoor-il/">Lakemoor, IL</a></li>
288	<li id="menu-item-1874" class="menu-item menu-item-type-post_type menu-item-object-location menu-item-1874"><a href="https://nobogoods.com/locations/northeast-minneapolis-mn/">NE Minneapolis, MN</a></li>
289</ul>
290</li>
291</ul></div>            <div role="button" aria-label="Hamburger Menu" class="hamburger_container">
292                <div class="hamburger-lines">
293                    <span class="line line1"></span>
294                    <span class="line line2"></span>
295                    <span class="line line3"></span>
296                </div>  
297            </div>
298
299    </div>
300</nav><div id="page_content">
301	
302<header class="hero home-hero" style='background-image: url(https://nobogoods.com/wp-content/uploads/2025/12/NewHero-NOBO-scaled.jpg);'>
303    
304    <div class="hero__content">
305        <h1>Crafted with Care. Powered by Passion.</h1>
306        <p>Experience the high life, from seed to spark. We are committed to growing, crafting and curating premium cannabis products with YOU in mind – in Michigan, Minnesota, Illinois, and Colorado.</p>
307                                <div class="btns-group">
308                                    <a class="button" href="" data-requires-location data-location-link="main_shop_link">Shop Now</a>
309                            </div>
310            </div>
311</header>
312<section id="scrolling-text">
313    <div class="ticker-wrapper">
314        <div class="horizontal-scrolling-items" id="ticker">
315            <div class="horizontal-scrolling-items__item">
316                <h4>Elevate your everyday</h4>
317            </div>
318        </div>
319    </div>
320</section>
321
322<section class="page_section shop-categories" id="shop-categories">
323    <div class="content_container">
324        <div class="content-wrapper">
325            <h3>Experience the <span>NOBO</span> Difference</h3>
326            <p>Welcome to NOBO where the magic of the plant meets commitment to the customer. We're aiming high – bold, sustainable and better in every way. From the finest flower to the cleanest extracts; whether you're new to cannabis or a connoisseur, we deliver elevated and unforgettable.</p>
327            <a class="button secondary" href="" data-requires-location data-location-link="main_shop_link">EXPLORE OUR PRODUCTS</a>
328        </div>
329        <div class="categories">
330            <img class="feature-image" src="https://nobogoods.com/wp-content/uploads/2025/09/NOBO-Home-Product-Feature.jpg">
331                            <div class="categories-wrapper">
332                                        <a class="single" href="" data-requires-location data-location-link="category_links.flower_link">
333                        <div style="background: url('https://nobogoods.com/wp-content/uploads/2025/09/NOBO-Home-Product-Flower.jpg');">
334                            <h4>FLOWER</h4>
335                        </div>
336                    </a>
337                    <a class="single" href="" data-requires-location data-location-link="category_links.pre-roll_link">
338                        <div style="background: url('https://nobogoods.com/wp-content/uploads/2025/09/NOBO-Home-Product-Prerolls.jpg');">
339                            <h4>PRE-ROLLS</h4>
340                        </div>
341                    </a>
342                    <a class="single" href="" data-requires-location data-location-link="category_links.edibles_link">
343                        <div style="background: url('https://nobogoods.com/wp-content/uploads/2025/09/NOBO-Home-Product-Edibles.jpg');">
344                            <h4>EDIBLES</h4>
345                        </div>
346                    </a>
347                    <a class="single" href="" data-requires-location data-location-link="category_links.vaporizers_link">
348                        <div style="background: url('https://nobogoods.com/wp-content/uploads/2025/09/NOBO-Home-Product-Vapes.jpg');">
349                            <h4>VAPORIZERS</h4>
350                        </div>
351                    </a>
352                    <a class="single" href="" data-requires-location data-location-link="category_links.concentrates_link">
353                        <div style="background: url('https://nobogoods.com/wp-content/uploads/2025/09/NOBO-Home-Product-Concentrates.jpg');">
354                            <h4>CONCENTRATES</h4>
355                        </div>
356                    </a>
357                    <a class="single" href="" data-requires-location data-location-link="category_links.accessories_link">
358                        <div style="background: url('https://nobogoods.com/w
358p-content/uploads/2025/09/NOBO-Home-Product-Accessoroes.jpg');">
359                            <h4>ACCESSORIES & MORE</h4>
360                        </div>
361                    </a>
362                                    </div>
363                    </div>
364    </div>
365    <div class="smoke-underlay-2"></div>
366</section><section id="featured-products" class="page_section">
367    <div class="content_container">
368        <h2>Grown, Crafted, And Curated For You</h2>
369                <div class="featured-products-wrapper">
370                        <a class="single" href="/brands/#rolling-thunder">
371                <div style="background: url('https://nobogoods.com/wp-content/uploads/2025/11/Untitled-design.png');">
372                <h4>Rolling Thunder</h4>                </div>
373            </a>
374            
375                        <a class="single" href="/brands/#nobo-signature">
376                <div style="background: url('https://nobogoods.com/wp-content/uploads/2025/11/NOBO-e1763159153615.jpg');">
377                <h4>NOBO</h4>                </div>
378            </a>
379            
380                        <a class="single" href="/brands/#mischief">
381                <div style="background: url('https://nobogoods.com/wp-content/uploads/2025/11/Mischief.jpg');">
382                <h4>Mischief</h4>                </div>
383            </a>
384                    </div>
385                        <div class="logos-section">
386            <div class="logos-carousel" data-duration="35">
387                <div class="logos-track">
388                                        <div class="slide">
389                        <img class="logo" src="https://nobogoods.com/wp-content/uploads/2025/11/Potshot-logo-marks-icons_Potshot-logo-label-art-scaled.png" alt="">
390                    </div>
391                                        <div class="slide">
392                        <img class="logo" src="https://nobogoods.com/wp-content/uploads/2025/09/024ab5a725c1f8ae8ea65b6a31d37bd55e93e54c.png" alt="">
393                    </div>
394                                        <div class="slide">
395                        <img class="logo" src="https://nobogoods.com/wp-content/uploads/2025/09/Vector.png" alt="">
396                    </div>
397                                        <div class="slide">
398                        <img class="logo" src="https://nobogoods.com/wp-content/uploads/2025/11/710-Labs-Transparent.png" alt="">
399                    </div>
400                                        <div class="slide">
401                        <img class="logo" src="https://nobogoods.com/wp-content/uploads/2025/11/ElevateLogo.png" alt="">
402                    </div>
403                                    </div>
404            </div>
405        </div>
406            </div>
407</section>
408
409<style>
410.logos-section {
411    width: 100%;
412}
413
414/* Carousel wrapper */
415.logos-carousel {
416    --gap: clamp(16px, 4vw, 48px);
417    --tile-h: clamp(42px, 8vw, 80px);
418    position: relative;
419    overflow: hidden;
420}
421
422/* Track of logos (scrolling element) */
423.logos-track {
424    display: flex;
425    align-items: center;
426    gap: var(--gap);
427    will-change: transform;
428    width: max-content; /* fit content width */
429}
430
431/* Individual logo slide */
432.slide {
433    flex: 0 0 auto;
434    height: var(--tile-h);
435    display: flex;
436    align-items: center;
437    justify-content: center;
438}
439
440.slide img.logo {
441    height: 100%;
442    width: auto;
443    max-width: 220px;
444    object-fit: contain;
445    display: block;
446}
447
448/* Infinite scrolling:
449   Move 0% → -33.333% (1/3 of track width)
450   Perfect seamless loop when using 3 duplicates
451*/
452@keyframes logos-marquee {
453    from { transform: translateX(0); }
454    to   { transform: translateX(-33.3333%); }
455}
456
457/* Pause animation on hover */
458.logos-carousel:hover .logos-track {
459    animation-play-state: paused;
460}
461
462/* If you REALLY want to honor reduced motion, keep this.
463   If it keeps killing the animation on your machine, you can remove it.
464*/
465@media (prefers-reduced-motion: reduce) {
466    .logos-track {
467        animation: none !important;
468    }
469}
470</style>
471
472<script>
473document.addEventListener('DOMContentLoaded', () => {
474    const DUPES = 3; // Duplicate logo set 3× for long seamless scroll
475
476    document.querySelectorAll('.logos-carousel').forEach((carousel) => {
477        const track = carousel.querySelector('.logos-track');
478        if (!track) return;
479
480        const duration = parseFloat(carousel.dataset.duration) || 35;
481        const originalHTML = track.innerHTML;
482
483        function setup() {
484            // Build 3 loops of the original content
485            let combined = "";
486            for (let i = 0; i < DUPES; i++) {
487                combined += originalHTML;
488            }
489            track.innerHTML = combined;
490
491            // Respect reduced motion — COMMENT THIS OUT if it interferes:
492            if (window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
493                track.style.animation = 'none';
494                track.style.removeProperty('transform');
495                return;
496            }
497
498            // Force browser to reflow (reset animation)
499            track.style.animation = 'none';
500            void track.offsetWidth;
501
502            // Apply animation directly (no class dependency)
503            track.style.animation = `logos-marquee ${duration}s linear infinite`;
504        }
505
506        // Completely reset the track when resizing
507        function teardown() {
508            track.style.animation = 'none';
509            track.innerHTML = originalHTML;
510        }
511
512        let resizeTimer;
513        function reinit() {
514            teardown();
515            clearTimeout(resizeTimer);
516            resizeTimer = setTimeout(setup, 120);
517        }
518
519        setup(); // Initial load
520        window.addEventListener('resize', reinit, { passive: true });
521    });
522});
523</script>
523
524
525<section id="below-featured-products" class="page_section standard-content">
526    <div class="content_container">
527        <div>
528<p>Only the best will do. Our menu is stacked with top-shelf strains, fresh drops, and must-try products you won&#8217;t find anywhere else. Every NOBO visit is a discovery, and the deals hit just as hard as our selections.</p>
529<p><a class="button secondary" data-requires-location="" data-location-link="main_shop_link">View Menu</a></p>
530</div>
531    </div>
532</section>
533<section id="scrolling-text">
534    <div class="ticker-wrapper">
535        <div class="horizontal-scrolling-items" id="ticker">
536            <div class="horizontal-scrolling-items__item">
537                <h4>Conscious Cannabis</h4>
538            </div>
539        </div>
540    </div>
541</section><section id="locations-map" class="page_section locations-map">
542    <div class="content_container">
543        <div class="left">
544            <div class="content-wrapper">
545                <h2>No Matter the Location, It’s <span>Always a NOBO Experience</span></h2>
546                <p>Every store brings the same premium products, next-level service, and bold, feel-good energy. Whether you’re in Michigan, Minnesota, Colorado, or Illinois, you’ll walk into a vibe that welcomes you. No matter where you are, if you are at NOBO, you are home.</p>
547            </div>
548                            <div class="featured-wrapper">
549                                            
550                        <div class="featured-location">
551                            <h4>Benton Harbor, MI</h4>
552                                                            <a href="tel:269-999-1041">269-999-1041</a>
553                                                    </div>
554                    
555                                            
556                        <div class="featured-location">
557                            <h4>Edwardsburg, MI</h4>
558                                                            <a href="tel:269-635-6621">269-635-6621</a>
559                                                    </div>
560                    
561                                            
562                        <div class="featured-location">
563                            <h4>Muskegon, MI</h4>
564                                                            <a href="tel:231-383-8100">231-383-8100</a>
565                                                    </div>
566                    
567                                            
568                        <div class="featured-location">
569                            <h4>South Haven, MI</h4>
570                                                            <a href="tel:269-767-4561">269-767-4561</a>
571                                                    </div>
572                    
573                                            
574                        <div class="featured-location">
575                            <h4>Denver, CO</h4>
576                                                            <a href="tel:303-862-7485">303-862-7485</a>
577                                                    </div>
578                    
579                                            
580                        <div class="featured-location">
581                            <h4>Lakemoor, IL</h4>
582                                                            <a href="tel:815-900-2990">815-900-2990</a>
583                                                    </div>
584                    
585                                            
586                        <div class="featured-location">
587                            <h4>NE Minneapolis, MN</h4>
588                                                            <a href="tel:763-283-8567">763-283-8567</a>
589                                                    </div>
590                    
591                                                        </div>
592                        <a class="button secondary" href="/locations">Find Your Nobo</a>
593        </div>
594        <div class="right">
595            <div class="leaflet-map WPLeafletMap" style="height:250px; width:100%;"></div>
595<script>
596window.WPLeafletMapPlugin = window.WPLeafletMapPlugin || [];
597window.WPLeafletMapPlugin.push(function WPLeafletMapShortcode() {/*
597<script>*/
598var baseUrl = atob('aHR0cHM6Ly90aWxlLm9wZW5zdHJlZXRtYXAub3JnL3t6fS97eH0ve3l9LnBuZw==');
599var base = (!baseUrl && window.MQ) ?
600    window.MQ.mapLayer() : L.tileLayer(baseUrl,
601        L.Util.extend({}, {
602            detectRetina: 0,
603        },
604        {"subdomains":"abc","noWrap":false,"maxZoom":15}        )
605    );
606    var options = L.Util.extend({}, {
607        layers: [base],
608        attributionControl: false
609    },
610    {"zoomControl":false,"scrollWheelZoom":true,"doubleClickZoom":true,"fitBounds":true,"minZoom":3,"maxZoom":15,"maxBounds":null,"attribution":"<a href=\"http:\/\/leafletjs.com\" title=\"A JS library for interactive maps\">Leaflet<\/a>; \u00a9 <a href=\"http:\/\/www.openstreetmap.org\/copyright\">OpenStreetMap<\/a> contributors"},
611    {});
612window.WPLeafletMapPlugin.createMap(options).setView([44.67,-63.61],15);});</script>
612<script>
613window.WPLeafletMapPlugin = window.WPLeafletMapPlugin || [];
614window.WPLeafletMapPlugin.push(function WPLeafletMarkerShortcode() {/*
614<script>*/
615var map = window.WPLeafletMapPlugin.getCurrentMap();
616var group = window.WPLeafletMapPlugin.getCurrentGroup();
617var marker_options = window.WPLeafletMapPlugin.getIconOptions({"iconUrl":"\/wp-content\/uploads\/2025\/10\/Pin.png","iconSize":"20,30","iconAnchor":"12,35"});
618var marker = L.marker(
619    [44.990361915743,-93.253884986508],
620    marker_options
621);
622var is_image = map.is_image_map;
623if (marker_options.draggable) {
624    marker.on('dragend', function () {
625        var latlng = this.getLatLng();
626        var lat = latlng.lat;
627        var lng = latlng.lng;
628        if (is_image) {
629            console.log('leaflet-marker y=' + lat + ' x=' + lng);
630        } else {
631            console.log('leaflet-marker lat=' + lat + ' lng=' + lng);
632        }
633    });
634}
635marker.addTo( group );
636marker.bindPopup(window.WPLeafletMapPlugin.unescape('&lt;a href=&quot;https://nobogoods.com/locations/northeast-minneapolis-mn/&quot;&gt;NE Minneapolis, MN&lt;/a&gt;'));window.WPLeafletMapPlugin.markers.push( marker );
637        });</script>
637<script>
638window.WPLeafletMapPlugin = window.WPLeafletMapPlugin || [];
639window.WPLeafletMapPlugin.push(function WPLeafletMarkerShortcode() {/*
639<script>*/
640var map = window.WPLeafletMapPlugin.getCurrentMap();
641var group = window.WPLeafletMapPlugin.getCurrentGroup();
642var marker_options = window.WPLeafletMapPlugin.getIconOptions({"iconUrl":"\/wp-content\/uploads\/2025\/10\/Pin.png","iconSize":"20,30","iconAnchor":"12,35"});
643var marker = L.marker(
644    [39.732083739622,-104.98590454233],
645    marker_options
646);
647var is_image = map.is_image_map;
648if (marker_options.draggable) {
649    marker.on('dragend', function () {
650        var latlng = this.getLatLng();
651        var lat = latlng.lat;
652        var lng = latlng.lng;
653        if (is_image) {
654            console.log('leaflet-marker y=' + lat + ' x=' + lng);
655        } else {
656            console.log('leaflet-marker lat=' + lat + ' lng=' + lng);
657        }
658    });
659}
660marker.addTo( group );
661marker.bindPopup(window.WPLeafletMapPlugin.unescape('&lt;a href=&quot;https://nobogoods.com/locations/denver-co/&quot;&gt;Denver, CO&lt;/a&gt;'));window.WPLeafletMapPlugin.markers.push( marker );
662        });</script>
662<script>
663window.WPLeafletMapPlugin = window.WPLeafletMapPlugin || [];
664window.WPLeafletMapPlugin.push(function WPLeafletMarkerShortcode() {/*
664<script>*/
665var map = window.WPLeafletMapPlugin.getCurrentMap();
666var group = window.WPLeafletMapPlugin.getCurrentGroup();
667var marker_options = window.WPLeafletMapPlugin.getIconOptions({"iconUrl":"\/wp-content\/uploads\/2025\/10\/Pin.png","iconSize":"20,30","iconAnchor":"12,35"});
668var marker = L.marker(
669    [42.32240408618,-88.1672978],
670    marker_options
671);
672var is_image = map.is_image_map;
673if (marker_options.draggable) {
674    marker.on('dragend', function () {
675        var latlng = this.getLatLng();
676        var lat = latlng.lat;
677        var lng = latlng.lng;
678        if (is_image) {
679            console.log('leaflet-marker y=' + lat + ' x=' + lng);
680        } else {
681            console.log('leaflet-marker lat=' + lat + ' lng=' + lng);
682        }
683    });
684}
685marker.addTo( group );
686marker.bindPopup(window.WPLeafletMapPlugin.unescape('&lt;a href=&quot;https://nobogoods.com/locations/lakemoor-il/&quot;&gt;Lakemoor, IL&lt;/a&gt;'));window.WPLeafletMapPlugin.markers.push( marker );
687        });</script>
687<script>
688window.WPLeafletMapPlugin = window.WPLeafletMapPlugin || [];
689window.WPLeafletMapPlugin.push(function WPLeafletMarkerShortcode() {/*
689<script>*/
690var map = window.WPLeafletMapPlugin.getCurrentMap();
691var group = window.WPLeafletMapPlugin.getCurrentGroup();
692var marker_options = window.WPLeafletMapPlugin.getIconOptions({"iconUrl":"\/wp-content\/uploads\/2025\/10\/Pin.png","iconSize":"20,30","iconAnchor":"12,35"});
693var marker = L.marker(
694    [42.375192888578,-86.268172528836],
695    marker_options
696);
697var is_image = map.is_image_map;
698if (marker_options.draggable) {
699    marker.on('dragend', function () {
700        var latlng = this.getLatLng();
701        var lat = latlng.lat;
702        var lng = latlng.lng;
703        if (is_image) {
704            console.log('leaflet-marker y=' + lat + ' x=' + lng);
705        } else {
706            console.log('leaflet-marker lat=' + lat + ' lng=' + lng);
707        }
708    });
709}
710marker.addTo( group );
711marker.bindPopup(window.WPLeafletMapPlugin.unescape('&lt;a href=&quot;https://nobogoods.com/locations/south-haven-mi/&quot;&gt;South Haven, MI&lt;/a&gt;'));window.WPLeafletMapPlugin.markers.push( marker );
712        });</script>
712<script>
713window.WPLeafletMapPlugin = window.WPLeafletMapPlugin || [];
714window.WPLeafletMapPlugin.push(function WPLeafletMarkerShortcode() {/*
714<script>*/
715var map = window.WPLeafletMapPlugin.getCurrentMap();
716var group = window.WPLeafletMapPlugin.getCurrentGroup();
717var marker_options = window.WPLeafletMapPlugin.getIconOptions({"iconUrl":"\/wp-content\/uploads\/2025\/10\/Pin.png","iconSize":"20,30","iconAnchor":"12,35"});
718var marker = L.marker(
719    [43.233991682667,-86.20885715582],
720    marker_options
721);
722var is_image = map.is_image_map;
723if (marker_options.draggable) {
724    marker.on('dragend', function () {
725        var latlng = this.getLatLng();
726        var lat = latlng.lat;
727        var lng = latlng.lng;
728        if (is_image) {
729            console.log('leaflet-marker y=' + lat + ' x=' + lng);
730        } else {
731            console.log('leaflet-marker lat=' + lat + ' lng=' + lng);
732        }
733    });
734}
735marker.addTo( group );
736marker.bindPopup(window.WPLeafletMapPlugin.unescape('&lt;a href=&quot;https://nobogoods.com/locations/muskegon-mi/&quot;&gt;Muskegon, MI&lt;/a&gt;'));window.WPLeafletMapPlugin.markers.push( marker );
737        });</script>
737<script>
738window.WPLeafletMapPlugin = window.WPLeafletMapPlugin || [];
739window.WPLeafletMapPlugin.push(function WPLeafletMarkerShortcode() {/*
739<script>*/
740var map = window.WPLeafletMapPlugin.getCurrentMap();
741var group = window.WPLeafletMapPlugin.getCurrentGroup();
742var marker_options = window.WPLeafletMapPlugin.getIconOptions({"iconUrl":"\/wp-content\/uploads\/2025\/10\/Pin.png","iconSize":"20,30","iconAnchor":"12,35"});
743var marker = L.marker(
744    [41.79052658493,-86.084777884656],
745    marker_options
746);
747var is_image = map.is_image_map;
748if (marker_options.draggable) {
749    marker.on('dragend', function () {
750        var latlng = this.getLatLng();
751        var lat = latlng.lat;
752        var lng = latlng.lng;
753        if (is_image) {
754            console.log('leaflet-marker y=' + lat + ' x=' + lng);
755        } else {
756            console.log('leaflet-marker lat=' + lat + ' lng=' + lng);
757        }
758    });
759}
760marker.addTo( group );
761marker.bindPopup(window.WPLeafletMapPlugin.unescape('&lt;a href=&quot;https://nobogoods.com/locations/edwardsburg-mi/&quot;&gt;Edwardsburg, MI&lt;/a&gt;'));window.WPLeafletMapPlugin.markers.push( marker );
762        });</script>
762<script>
763window.WPLeafletMapPlugin = window.WPLeafletMapPlugin || [];
764window.WPLeafletMapPlugin.push(function WPLeafletMarkerShortcode() {/*
764<script>*/
765var map = window.WPLeafletMapPlugin.getCurrentMap();
766var group = window.WPLeafletMapPlugin.getCurrentGroup();
767var marker_options = window.WPLeafletMapPlugin.getIconOptions({"iconUrl":"\/wp-content\/uploads\/2025\/10\/Pin.png","iconSize":"20,30","iconAnchor":"12,35"});
768var marker = L.marker(
769    [42.116524663784,-86.455323875134],
770    marker_options
771);
772var is_image = map.is_image_map;
773if (marker_options.draggable) {
774    marker.on('dragend', function () {
775        var latlng = this.getLatLng();
776        var lat = latlng.lat;
777        var lng = latlng.lng;
778        if (is_image) {
779            console.log('leaflet-marker y=' + lat + ' x=' + lng);
780        } else {
781            console.log('leaflet-marker lat=' + lat + ' lng=' + lng);
782        }
783    });
784}
785marker.addTo( group );
786marker.bindPopup(window.WPLeafletMapPlugin.unescape('&lt;a href=&quot;https://nobogoods.com/locations/benton-harbor-mi/&quot;&gt;Benton Harbor, MI&lt;/a&gt;'));window.WPLeafletMapPlugin.markers.push( marker );
787        });</script>
787
788        </div>
789    </div>
790</section>
791
792<section class="page_section recent-posts">
793    <div class="content_container">
794        <div class="content-wrapper">
795            <div class="top-content">
796                <h2><span>Weed Wisdom,</span> Delivered Weekly</h2>
797                <p></p>
798            </div>
799            <a class="button secondary" href="/blog">Read The Blog</a>
800        </div>
801                    <div class="recent-posts-container">
802                                    <div class="post-card">
803                        <a class="post-link" href="https://nobogoods.com/blog/treat-yourself-to-a-better-nights-sleep-cannabis-picks-that-actually-work/">
804                            <div class="post-card-inner">
805                                <div class="post-image">
806                                    <img width="1024" height="683" src="https://nobogoods.com/wp-content/uploads/2025/10/pexels-feelartfeelant-1028741-1024x683.jpg" class="attachment-large size-large wp-post-image" alt="" style="width: 100%; height: 100%; object-fit: cover;" decoding="async" fetchpriority="high" srcset="https://nobogoods.com/wp-content/uploads/2025/10/pexels-feelartfeelant-1028741-1024x683.jpg 1024w, https://nobogoods.com/wp-content/uploads/2025/10/pexels-feelartfeelant-1028741-300x200.jpg 300w, https://nobogoods.com/wp-content/uploads/2025/10/pexels-feelartfeelant-1028741-768x512.jpg 768w, https://nobogoods.com/wp-content/uploads/2025/10/pexels-feelartfeelant-1028741-1536x1024.jpg 1536w, https://nobogoods.com/wp-content/uploads/2025/10/pexels-feelartfeelant-1028741.jpg 1920w" sizes="(max-width: 1024px) 100vw, 1024px" />                                </div>
807
808                                <!-- Hidden until hover -->
809                                <div class="post-info">
810                                    <h4 class="post-title">Treat Yourself to a Better Night’s Sleep: Cannabis Picks That Actually Work</h4>
811                                    <p class="post-excerpt">A good night’s sleep is one of the most powerful tools we have for physical and mental recovery, but millions of people struggle to get it. Insomnia,…</p>
812                                </div>
813                            </div>
814                        </a>
815                    </div>
816                                    <div class="post-card">
817                        <a class="post-link" href="https://nobogoods.com/blog/pairing-cannabis-with-your-favorite-music-genres/">
818                            <div class="post-card-inner">
819                                <div class="post-image">
820                                    <img width="768" height="1024" src="https://nobogoods.com/wp-content/uploads/2025/10/pexels-paul-uchechukwu-246994638-18923481-768x1024.jpg" class="attachment-large size-large wp-post-image" alt="" style="width: 100%; height: 100%; object-fit: cover;" decoding="async" srcset="https://nobogoods.com/wp-content/uploads/2025/10/pexels-paul-uchechukwu-246994638-18923481-768x1024.jpg 768w, https://nobogoods.com/wp-content/uploads/2025/10/pexels-paul-uchechukwu-246994638-18923481-225x300.jpg 225w, https://nobogoods.com/wp-content/uploads/2025/10/pexels-paul-uchechukwu-246994638-18923481-1152x1536.jpg 1152w, https://nobogoods.com/wp-content/uploads/2025/10/pexels-paul-uchechukwu-246994638-18923481-1536x2048.jpg 1536w, https://nobogoods.com/wp-content/uploads/2025/10/pexels-paul-uchechukwu-246994638-18923481.jpg 1920w" sizes="(max-width: 768px) 100vw, 768px" />                                </div>
821
822                                <!-- Hidden until hover -->
823                                <div class="post-info">
824                                    <h4 class="post-title">Pairing Cannabis with Your Favorite Music Genres</h4>
825                                    <p class="post-excerpt">How to Elevate Your Listening Experience with the Right Strain Few things go together quite like cannabis and music. Both have the power to elevate th…</p>
826                                </div>
827                            </div>
828                        </a>
829                    </div>
830                                    <div class="post-card">
831                        <a class="post-link" href="https://nobogoods.com/blog/healthier-cannabis-consumption-a-guide-to-mindful-choices/">
832                            <div class="post-card-inner">
833                                <div class="post-image">
834                                    <img width="709" height="763" src="https://nobogoods.com/w
834p-content/uploads/2025/10/Screenshot_2025-04-25_at_6.51.58-PM_.png" class="attachment-large size-large wp-post-image" alt="" style="width: 100%; height: 100%; object-fit: cover;" decoding="async" srcset="https://nobogoods.com/wp-content/uploads/2025/10/Screenshot_2025-04-25_at_6.51.58-PM_.png 709w, https://nobogoods.com/wp-content/uploads/2025/10/Screenshot_2025-04-25_at_6.51.58-PM_-279x300.png 279w" sizes="(max-width: 709px) 100vw, 709px" />                                </div>
835
836                                <!-- Hidden until hover -->
837                                <div class="post-info">
838                                    <h4 class="post-title">Healthier Cannabis Consumption: A Guide to Mindful Choices</h4>
839                                    <p class="post-excerpt">As cannabis use becomes more mainstream, many consumers are taking a closer look at how different methods of consumption impact their health. In Color…</p>
840                                </div>
841                            </div>
842                        </a>
843                    </div>
844                            </div>
845                        </div>
846    <div class="smoke-underlay"></div>
847</section>
848<section id="global-cta" class="page_section" style="background: url('')">
849    <div class="content_container">
850        <h3>new to nobo?</h3>
851        <strong>GET ON THE LIST. <span>GET THE GOODS.</span></strong>
852        <p>Our VIP treatment starts with your email. Be the first to know about product drops, exclusive events, and next-level deals </p>
853                <a class="button secondary" href="https://nobogoods.com/rewards/" target="_self">Sign Up</a>
854            </div>
855</section>
856<script src="https://ig.instant-tokens.com/users/60308928-e015-4758-8748-202e59d4c3a4/instagram/24504014695958016/token?userSecret=q1s2no7pr18fs0cxfpleyq"></script>
vendor: 1 bytes, line 856
856
857<script src="https://ig.instant-tokens.com/users/60308928-e015-4758-8748-202e59d4c3a4/instagram/24504014695958016/token.js?userSecret=q1s2no7pr18fs0cxfpleyq"></script>
vendor: 1 bytes, line 857
857
858<script src="https://s3.eu-central-1.wasabisys.com/instafeed/instafeed-v3.min.js"></script>
vendor: 1 bytes, line 858
858
859<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
859
860
861<section id="instagram-feed" class="page_section">
862    <div class="content_container">
863        <div class="header">
864                            <h2>Scroll the Vibes.</h2>
865                                        <h2>Join the Conversation.</h2>
866                                        <p>Catch us on Instagram @nobo.goods for fresh drops, in-store moments, and community highlights. Snag something dope? Tag us to get featured –  we’re all about that flex life.</p>
867                                </div>
868        <div id="instafeed"></div>
869    </div>
870</section>
871
872<style>
873
874</style></div>
875<footer id="page_footer">
876	<div class="content_container col_3">
877	
878			<div class="column">
879			<div><div class="menu-footer-menu-1-container"><ul id="menu-footer-menu-1" class="menu"><li id="menu-item-791" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-791"><a href="https://nobogoods.com/about/">About Us</a></li>
880<li id="menu-item-792" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-792"><a href="/brands/">Our Brands</a></li>
881<li id="menu-item-1837" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1837"><a href="https://nobogoods.com/budtender/">Budtender</a></li>
882<li id="menu-item-793" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-793"><a href="/blog/">Blog</a></li>
883<li id="menu-item-1080" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1080"><a href="https://nobogoods.com/careers/">Careers</a></li>
884<li id="menu-item-1081" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1081"><a href="https://nobogoods.com/contact/">Contact</a></li>
885<li id="menu-item-794" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-794"><a href="/locations/">Find A Store</a></li>
886<li id="menu-item-1716" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1716"><a href="https://nobogoods.com/investors/">Investors</a></li>
887</ul></div></div>		</div>
888	
889			<div class="column">
890			<div><div class="menu-footer-menu-3-container"><ul id="menu-footer-menu-3" class="menu"><li id="menu-item-1037" class="menu-item menu-item-type-post_type menu-item-object-location menu-item-1037"><a href="https://nobogoods.com/locations/denver-co/">Denver, CO</a></li>
891<li id="menu-item-1038" class="menu-item menu-item-type-post_type menu-item-object-location menu-item-1038"><a href="https://nobogoods.com/locations/lakemoor-il/">Lakemoor, IL</a></li>
892<li id="menu-item-1039" class="menu-item menu-item-type-post_type menu-item-object-location menu-item-1039"><a href="https://nobogoods.com/locations/south-haven-mi/">South Haven, MI</a></li>
893<li id="menu-item-1040" class="menu-item menu-item-type-post_type menu-item-object-location menu-item-1040"><a href="https://nobogoods.com/locations/muskegon-mi/">Muskegon, MI</a></li>
894<li id="menu-item-1042" class="menu-item menu-item-type-post_type menu-item-object-location menu-item-1042"><a href="https://nobogoods.com/locations/edwardsburg-mi/">Edwardsburg, MI</a></li>
895<li id="menu-item-1043" class="menu-item menu-item-type-post_type menu-item-object-location menu-item-1043"><a href="https://nobogoods.com/locations/benton-harbor-mi/">Benton Harbor, MI</a></li>
896<li id="menu-item-1873" class="menu-item menu-item-type-post_type menu-item-object-location menu-item-1873"><a href="https://nobogoods.com/locations/northeast-minneapolis-mn/">NE Minneapolis, MN</a></li>
897</ul></div></div>		</div>
898	
899	
900			<div class="column">
901			<div><h4>GET THE APP</h4>			<div class="textwidget"><div class="app-store-buttons"><a href="https://play.google.com/store/apps/details?id=com.nobogoods.wallet" target="_blank" rel="noopener"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-801" src="https://nobogoods.com/wp-content/uploads/2025/09/c6cade69e0a6c2085c5b814894f676088fab808f.png" alt="" width="1280" height="380" srcset="https://nobogoods.com/wp-content/uploads/2025/09/c6cade69e0a6c2085c5b814894f676088fab808f.png 1280w, https://nobogoods.com/wp-content/uploads/2025/09/c6cade69e0a6c2085c5b814894f676088fab808f-300x89.png 300w, https://nobogoods.com/w
901p-content/uploads/2025/09/c6cade69e0a6c2085c5b814894f676088fab808f-1024x304.png 1024w, https://nobogoods.com/wp-content/uploads/2025/09/c6cade69e0a6c2085c5b814894f676088fab808f-768x228.png 768w" sizes="auto, (max-width: 1280px) 100vw, 1280px" /></a><a href="https://apps.apple.com/us/app/nobo-goods/id1643979427" target="_blank" rel="noopener"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-800" src="https://nobogoods.com/wp-content/uploads/2025/09/743ca3da0d670b5730e3b1642a1763ad7a1a6132.png" alt="" width="1280" height="428" srcset="https://nobogoods.com/wp-content/uploads/2025/09/743ca3da0d670b5730e3b1642a1763ad7a1a6132.png 1280w, https://nobogoods.com/wp-content/uploads/2025/09/743ca3da0d670b5730e3b1642a1763ad7a1a6132-300x100.png 300w, https://nobogoods.com/wp-content/uploads/2025/09/743ca3da0d670b5730e3b1642a1763ad7a1a6132-1024x342.png 1024w, https://nobogoods.com/wp-content/uploads/2025/09/743ca3da0d670b5730e3b1642a1763ad7a1a6132-768x257.png 768w" sizes="auto, (max-width: 1280px) 100vw, 1280px" /></a></div>
902</div>
903		</div><div class="social_container"><a href="https://www.facebook.com/noboillinois/" target="_blank"><i class="fab fa-facebook-f"></i></a><a href="https://www.instagram.com/nobo.goods" target="_blank"><i class="fab fa-instagram"></i></a></div>		</div>
904	
905	</div>
906	<div class="footer-logo">
907		<a href="/"><img src="https://nobogoods.com/wp-content/uploads/2025/12/FooterLogo-NEW2025.svg" class="footer_logo"></a>	</div>
908	<div class="copyright">
909		<p>&copy; 2026 NOBO. All rights reserved.<span>|</span> <a href="/privacy-policy">Privacy Policy</a> | <a href="/terms-conditions">Terms & Conditions</a> | <a href="/accessibility">Accessibility</a></p>
909		<p>Website Design by <a href="https://cannabiscreative.com" target="_blank">Cannabis Creative</a></p>
910	</div>
911</footer>
912</div>
912<script type="speculationrules">
913{"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/nobo/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]}
914</script>
vendor: 1 bytes, line 914
914
915<script id="main-script-js-extra">
916var WP_DATA = {"ajaxurl":"https://nobogoods.com/wp-admin/admin-ajax.php"};
917//# sourceURL=main-script-js-extra
918</script>
vendor: 1 bytes, line 918
918
919<script id="main-script-js" src="https://nobogoods.com/wp-content/themes/nobo/js/main.min.js?ver=1785870616"></script>
vendor: 1 bytes, line 919
919
920<script id="main-navigation-js" src="https://nobogoods.com/wp-content/themes/nobo/js/navigation.js?ver=1785870616"></script>
vendor: 1 bytes, line 920
920
921<script id="leaflet_js-js" src="https://unpkg.com/[email protected]/dist/leaflet.js"></script>
vendor: 1 bytes, line 921
921
922<script id="wp_leaflet_map-js" src="https://nobogoods.com/wp-content/plugins/leaflet-map/scripts/construct-leaflet-map.min.js?ver=3.4.7"></script>
vendor: 1 bytes, line 922
922
923<script id="wp-emoji-settings" type="application/json">
924{"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://nobogoods.com/wp-includes/js/wp-emoji-release.min.js?ver=7.1.3"}}
925</script>
vendor: 1 bytes, line 925
925
926<script type="module">
927/*! This file is auto-generated */
928var 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)))});
929//# sourceURL=https://nobogoods.com/wp-includes/js/wp-emoji-loader.min.js
930</script>
930
931
932    <!-- Home URL for building absolute redirects -->
933    
933<script>window.NB_HOME_URL = "https://nobogoods.com/";</script>
933
934
935    <!-- Safe JSON payload -->
936    
936<script id="locations-links-json" type="application/json">
937        {"807":{"id":807,"title":"Benton Harbor, MI","slug":"benton-harbor-mi","permalink":"https://nobogoods.com/locations/benton-harbor-mi/","main_shop_link":"/menu-benton-harbor-mi/","category_links":{"flower_link":"/menu-benton-harbor-mi/?dtche%5Bcategory%5D=flower","pre-roll_link":"/menu-benton-harbor-mi/?dtche%5Bcategory%5D=pre-rolls","edibles_link":"/menu-benton-harbor-mi/?dtche%5Bcategory%5D=edibles","vaporizers_link":"/menu-benton-harbor-mi/?dtche%5Bcategory%5D=vaporizers","concentrates_link":"/menu-benton-harbor-mi/?dtche%5Bcategory%5D=concentrates","accessories_link":"/menu-benton-harbor-mi/?dtche%5Bcategory%5D=accessories"},"featured_products":{"featured_product_1":"","featured_product_2":"","featured_product_3":""},"contact":{"address":"129 E. Main Street<br />\r\nBenton Harbor, MI 49022","phone_number":"269-999-1041","email":"","hours":"Every Day - 9am to 9pm","directions":"https://maps.app.goo.gl/f6G9jevob5XByASX8"},"brand_links":{"mischief_link":"/menu-benton-harbor-mi/?dtche%5Bpath%5D=brands%2Fmischief","rolling_thunder_link":"/menu-benton-harbor-mi/?dtche%5Bpath%5D=brands%2Frolling-thunder","nobo_link":"/menu-benton-harbor-mi/?dtche%5Bpath%5D=brands%2Fnobo"}},"819":{"id":819,"title":"Denver, CO","slug":"denver-co","permalink":"https://nobogoods.com/locations/denver-co/","main_shop_link":"/menu-denver-co/","category_links":{"flower_link":"/menu-denver-co/?dtche%5Bcategory%5D=flower","pre-roll_link":"/menu-denver-co/?dtche%5Bcategory%5D=pre-rolls","edibles_link":"/menu-denver-co/?dtche%5Bcategory%5D=edibles","vaporizers_link":"/menu-denver-co/?dtche%5Bcategory%5D=vaporizers","concentrates_link":"/menu-denver-co/?dtche%5Bcategory%5D=concentrates","accessories_link":"/menu-denver-co/?dtche%5Bcategory%5D=accessories"},"featured_products":{"featured_product_1":"/testing-1","featured_product_2":"/testing-2","featured_product_3":"/testing-3"},"contact":{"address":"970 Lincoln St<br />\r\nDenver, CO 80203","phone_number":"303-862-7485","email":"","hours":"Every Day - 9am to 9pm","directions":"https://maps.app.goo.gl/4AxRySCHn3bumPfW7"},"brand_links":{"mischief_link":"/menu-denver-co/?dtche%5Bpath%5D=brands%2Fmischief","rolling_thunder_link":"/menu-denver-co/?dtche%5Bpath%5D=brands","nobo_link":"/menu-denver-co/?dtche%5Bpath%5D=brands%2Fnobo"}},"809":{"id":809,"title":"Edwardsburg, MI","slug":"edwardsburg-mi","permalink":"https://nobogoods.com/locations/edwardsburg-mi/","main_shop_link":"/menu-edwardsburg-mi/","category_links":{"flower_link":"/menu-edwardsburg-mi/?dtche%5Bcategory%5D=flower","pre-roll_link":"/menu-edwardsburg-mi/?dtche%5Bcategory%5D=pre-rolls","edibles_link":"/menu-edwardsburg-mi/?dtche%5Bcategory%5D=edibles","vaporizers_link":"/menu-edwardsburg-mi/?dtche%5Bcategory%5D=vaporizers","concentrates_link":"/menu-edwardsburg-mi/?dtche%5Bcategory%5D=concentrates","accessories_link":"/menu-edwardsburg-mi/?dtche%5Bcategory%5D=accessories"},"featured_products":{"featured_product_1":"","featured_product_2":"","featured_product_3":""},"contact":{"address":"69411 M-62<br />\r\nEdwardsburg, MI 49112","phone_number":"269-635-6621","email":"","hours":"Every Day - 9am to 9pm","directions":"https://maps.app.goo.gl/Tso7TVHirwRUAZbd9"},"brand_links":{"mischief_link":"/menu-edwardsburg-mi/?dtche%5Bpath%5D=brands%2Fmischief","rolling_thunder_link":"/menu-edwardsburg-mi/?dtche%5Bpath%5D=brands%2Frolling-thunder","nobo_link":"/menu-edwardsburg-mi/?dtche%5Bpath%5D=brands%2Fnobo"}},"817":{"id":817,"title":"Lakemoor, IL","slug":"lakemoor-il","permalink":"https://nobogoods.com/locations/lakemoor-il/","main_shop_link":"/menu-lakemoor-il/","category_links":{"flower_link":"/menu-lakemoor-il/?dtche%5Bcategory%5D=flower","pre-roll_link":"/menu-lakemoor-il/?dtche%5Bcategory%5D=pre-rolls","edibles_link":"/menu-lakemoor-il/?dtche%5Bcategory%5D=edibles","vaporizers_link":"/menu-lakemoor-il/?dtche%5Bcategory%5D=vaporizers","concentrates_link":"/menu-lakemoor-il/?dtche%5Bcategory%5D=concentrates","accessories_link":"/menu-lakemoor-il/?dtche%5Bcategory%5D=accessories"},"featured_products":{"featured_product_1":"","featured_product_2":"","featured_product_3":""},"contact":{"address":"27500 IL-120<br />\r\nLakemoor, IL 60051","phone_number":"815-900-2990","email":"","hours":"Every Day - 9am to 9pm","directions":"https://maps.app.goo.gl/v4QT6W6vYnDjLhBs5"},"brand_links":{"mischief_link":"/menu-lakemoor-il/?dtche%5Bpath%5D=brands","rolling_thunder_link":"/menu-lakemoor-il/?dtche%5Bpath%5D=brands","nobo_link":"/menu-lakemoor-il/?dtche%5Bpath%5D=brands%2Fnobo"}},"813":{"id":813,"title":"Muskegon, MI","slug":"muskegon-mi","permalink":"https://nobogoods.com/locations/muskegon-mi/","main_shop_link":"/menu-muskegon-mi/","category_links":{"flower_link":"/menu-muskegon-mi/?dtche%5Bcategory%5D=flower","pre-roll_link":"/menu-muskegon-mi/?dtche%5Bcategory%5D=pre-rolls","edibles_link":"/menu-muskegon-mi/?dtche%5Bcategory%5D=edibles","vaporizers_link":"/menu-muskegon-mi/?dtche%5Bcategory%5D=vaporizers","concentrates_link":"/menu-muskegon-mi/?dtche%5Bcategory%5D=concentrates","accessories_link":"/menu-muskegon-mi/?dtche%5Bcategory%5D=accessories"},"featured_products":{"featured_product_1":"","featured_product_2":"","featured_product_3":""},"contact":{"address":"1401 E Apple Ave<br />\r\nMuskegon, MI 49442","phone_number":"231-383-8100","email":"","hours":"Every Day - 9am to 9pm","directions":"https://maps.app.goo.gl/2sDo9SmVxAC7wNck8"},"brand_links":{"mischief_link":"/menu-muskegon-mi/?dtche%5Bpath%5D=brands%2Fmischief","rolling_thunder_link":"/menu-muskegon-mi/?dtche%5Bpath%5D=brands%2Frolling-thunder","nobo_link":"/menu-muskegon-mi/?dtche%5Bpath%5D=brands%2Fnobo"}},"1167":{"id":1167,"title":"NE Minneapolis, MN","slug":"northeast-minneapolis-mn","permalink":"https://nobogoods.com/locations/northeast-minneapolis-mn/","main_shop_link":"/ne-minneapolis-menu/","category_links":{"flower_link":"/ne-minneapolis-menu/?dtche%5Bcategory%5D=flower","pre-roll_link":"","edibles_link":"/ne-minneapolis-menu/?dtche%5Bcategory%5D=edibles","vaporizers_link":"","concentrates_link":"","accessories_link":"/ne-minneapolis-menu/?dtche%5Bcategory%5D=accessories"},"featured_products":{"featured_product_1":"","featured_product_2":"","featured_product_3":""},"contact":{"address":"501 1st Ave NE Ste 130, Minneapolis, MN 55413","phone_number":"763-283-8567","email":"[email protected]","hours":"Sun-Wed: 10am - 8pm / Thur-Sat: 10am - 10pm","directions":"https://maps.app.goo.gl/J61WtNu6zun4iZjg6"},"brand_links":{"mischief_link":"https://nobogoods.com/locations/northeast-minneapolis-mn/","rolling_thunder_link":"https://nobogoods.com/locations/northeast-minneapolis-mn/","nobo_link":"https://nobogoods.com/locations/northeast-minneapolis-mn/"}},"815":{"id":815,"title":"South Haven, MI","slug":"south-haven-mi","permalink":"https://nobogoods.com/locations/south-haven-mi/","main_shop_link":"/menu-south-haven-mi/","category_links":{"flower_link":"/menu-south-haven-mi/?dtche%5Bcategory%5D=flower","pre-roll_link":"/menu-south-haven-mi/?dtche%5Bcategory%5D=pre-rolls","edibles_link":"/menu-south-haven-mi/?dtche%5Bcategory%5D=edibles","vaporizers_link":"/menu-south-haven-mi/?dtche%5Bcategory%5D=vaporizers","concentrates_link":"/menu-south-haven-mi/?dtche%5Bcategory%5D=concentrates","accessories_link":"/menu-south-haven-mi/?dtche%5Bcategory%5D=accessories"},"featured_products":{"featured_product_1":"","featured_product_2":"","featured_product_3":""},"contact":{"address":"11637 M-140<br />\r\nSouth Haven, MI 49090","phone_number":"269-767-4561","email":"","hours":"Every Day - 9am to 9pm","directions":"https://maps.app.goo.gl/ePh4T5MsKEjYFnTCA"},"brand_links":{"mischief_link":"/menu-south-haven-mi/?dtche%5Bpath%5D=brands%2Fmischief","rolling_thunder_link":"/menu-south-haven-mi/?dtche%5Bpath%5D=brands%2Frolling-thunder","nobo_link":"/menu-south-haven-mi/?dtche%5Bpath%5D=brands%2Fnobo"}}}    </script>
937
938
939    <!-- Behavior JS -->
940    
940<script>
941    (function(){
942        // Parse the JSON payload safely
943        (function initData(){
944            try {
945                var el = document.getElementById('locations-links-json');
946                window.LOCATIONS_LINKS = el ? JSON.parse(el.textContent || '{}') : {};
947            } catch (e) {
948                console.error('Failed to parse LOCATIONS_LINKS JSON', e);
949                window.LOCATIONS_LINKS = {};
950            }
951        })();
952
953        var KEY = 'site_location_id';
954
955        function $(sel, root){ return (root||document).querySelector(sel); }
956        function $all(sel, root){ return Array.prototype.slice.call((root||document).querySelectorAll(sel)); }
957
958        function getSelectedId() {
959            var sel = $('#locations-dropdown');
960            if (sel && sel.value) return sel.value;
961            return localStorage.getItem(KEY) || '';
962        }
963        function syncSelects(id) {
964            var main = $('#locations-dropdown');
965            var modal = $('#locations-dropdown-modal'); // optional modal select
966            if (main && main.value !== id) main.value = id || '';
967            if (modal && modal.value !== id) modal.value = id || '';
968        }
969        function setSelectedId(id) {
970            if (!id) { localStorage.removeItem(KEY); }
971            else { localStorage.setItem(KEY, id); }
972            syncSelects(id || '');
973            document.dispatchEvent(new CustomEvent('location:change', { detail: { id:id || '' } }));
974        }
975
976        // Helpers
977        function getPath(obj, path) {
978            if (!obj || !path) return '';
979            var parts = String(path).split('.');
980            var cur = obj;
981            for (var i=0;i<parts.length;i++){
982                if (cur == null) return '';
983                cur = cur[parts[i]];
984            }
985            return (typeof cur === 'string') ? cur : '';
986        }
987        function isAnchor(el) { return el && (el.tagName === 'A' || el.hasAttribute('href')); }
988        function escapeHTML(s){ return (s==null?'':String(s)).replace(/[&<>"']/g,function(m){return ({'&':'&amp;','<':'&lt;','>':'&gt;','"':'&quot;',"'":'&#39;'}[m]);}); }
989
990        // Collapse any combo of <br>, &lt;br&gt;, and newlines to a single <br>
991        function formatLinesSingleBr(s){
992            if (!s) return '';
993            var str = String(s)
994                .replace(/&lt;\s*br\s*\/?\s*&gt;/gi, '<br>')
995                .replace(/<\s*br\s*\/?>/gi, '\n')
996                .replace(/\r\n?/g, '\n');
997            var lines = str.split('\n').map(function(t){ return t.trim(); }).filter(function(t){ return t !== ''; });
998            return lines.map(escapeHTML).join('<br>');
999        }
1000
1001        function telHref(s){ if(!s) return ''; var d = String(s).replace(/[^\d\+]/g,''); return d ? 'tel:'+d : ''; }
1002        function mailHref(s){ if(!s) return ''; return 'mailto:'+String(s).trim(); }
1003
1004        // Track a click that needs navigation after location selection
1005        var pendingNav = null;
1006
1007        // Resolve a URL from data + path with same fallbacks used in applyLinks()
1008        function resolveUrlForPath(data, path) {
1009            if (!data || !path) return '';
1010            var url = getPath(data, path) || '';
1011
1012            // Fallbacks (match applyLinks behavior)
1013            if (!url) {
1014                if (path.indexOf('category_links.') === 0) {
1015                    url = data.main_shop_link || '';
1016                } else if (path.indexOf('brand_links.') === 0) {
1017                    url = data.main_shop_link || '';
1018                }
1019            }
1020            return url || '';
1021        }
1022
1023        // Detect if current page is a /menu-.../ page, and extract its slug
1024        function isOnMenuPage() {
1025            return /\/menu-[^\/]+\/?$/.test(window.location.pathname);
1026        }
1027        function getCurrentMenuSlug() {
1028            var m = window.location.pathname.match(/\/menu-([^\/]+)\/?$/);
1029            return m ? m[1] : '';
1030        }
1031        function buildMenuUrlForSlug(slug) {
1032            var base = (window.NB_HOME_URL || '/');
1033            if (!/\/$/.test(base)) base += '/';
1034            return base + 'menu-' + slug.replace(/^\/+|\/+$/g,'') + '/';
1035        }
1036
1037        // If there's a pending navigation and a selected location, go there
1038        function maybeNavigatePending() {
1039            if (!pendingNav) return false; // return whether we navigated
1040            var id   = getSelectedId();
1041            var data = window.LOCATIONS_LINKS && window.LOCATIONS_LINKS[id];
1042            var url  = resolveUrlForPath(data, pendingNav.path);
1043
1044            if (url) {
1045                if (pendingNav.target && pendingNav.target.toLowerCase() === '_blank') {
1046                    window.open(url, '_blank', 'noopener');
1047                } else {
1048                    window.location.href = url;
1049                }
1050                pendingNav = null;
1051                return true;
1052            }
1053            pendingNav = null;
1054            return false;
1055        }
1056
1057        // If on /menu-.../ and no pending gated click, redirect to the selected location's menu
1058        function maybeRedirectMenuPage() {
1059            if (!isOnMenuPage()) return;
1060            var id   = getSelectedId();
1061            var data = window.LOCATIONS_LINKS && window.LOCATIONS_LINKS[id];
1062            if (!data || !data.slug) return;
1063
1064            var currentSlug = getCurrentMenuSlug();
1065            if (currentSlug && currentSlug === data.slug) return; // already correct page
1066
1067            var target = buildMenuUrlForSlug(data.slug);
1068            window.location.href = target;
1069        }
1070
1071        // Apply URLs/text to elements with data-attributes
1072        function applyLinks() {
1073            var id   = getSelectedId();
1074            var data = window.LOCATIONS_LINKS && window.LOCATIONS_LINKS[id];
1075
1076            // HREF bindings
1077            $all('[data-location-link]').forEach(function(el){
1078                var path = el.getAttribute('data-location-link'); // e.g. "brand_links.mischief_link"
1079                var url  = data ? getPath(data, path) : '';
1080
1081                // Fallbacks
1082                if (!url && data && path) {
1083                    if (path.indexOf('category_links.') === 0) {
1084                        url = data.main_shop_link || '';
1085                    } else if (path.indexOf('brand_links.') === 0) {
1086                        url = data.main_shop_link || '';
1087                    }
1088                }
1089
1090                if (url) {
1091                    if (isAnchor(el)) el.setAttribute('href', url);
1092                    el.dataset.hasLink = '1';
1093                    el.classList.add('location-linked');
1094                } else {
1095                    if (isAnchor(el)) el.setAttribute('href', '');
1096                    el.dataset.hasLink = '0';
1097                    el.classList.remove('location-linked');
1098                }
1099            });
1100
1101            // HTML bindings
1102            $all('[data-location-html]').forEach(function(el){
1103                if (!data) return;
1104                var path = el.getAttribute('data-location-html');
1105                var val  = getPath(data, path) || '';
1106                if (val !== '') el.innerHTML = val;
1107            });
1108        }
1109
1110        // Renders any .location-info cards in the DOM
1111        function renderLocationInfoAll() {
1112            var id   = getSelectedId();
1113            var data = window.LOCATIONS_LINKS && window.LOCATIONS_LINKS[id];
1114            var contact = data && data.contact ? data.contact : null;
1115
1116            $all('.location-info').forEach(function(box){
1117                if (!data || !contact) {
1118                    box.innerHTML = '';
1119                    box.setAttribute('data-empty','1');
1120                    return;
1121                }
1122                var phoneHref = telHref(contact.phone_number);
1123                var emailHref = mailHref(contact.email);
1124
1125                box.innerHTML = '' +
1126                    '<div class="locations-card">' +
1127                        '<div class="locations-card__body">' +
1128                            '<h4 class="locations-card__name">' +
1129                                '<a href="'+ escapeHTML(data.permalink || '') +'">' + escapeHTML(data.title || '') + '</a>' +
1130                            '</h4>' +
1131
1132                            (contact.address ? (
1133                                '<div class="locations-card__address"><p>' + formatLinesSingleBr(contact.address) + '</p></div>'
1134                            ) : '') +
1135
1136                            '<div class="locations-card__meta">' +
1137
1138                                (contact.hours ? (
1139                                    '<div class="locations-card__hours">' +
1140                                        '<strong>Hours: </strong>' +
1141                                        '<span>' + formatLinesSingleBr(contact.hours) + '</span>' +
1142                                    '</div>'
1143                                ) : '') +
1144
1145                                (contact.phone_number ? (
1146                                    '<div class="locations-card__phoneRow">' +
1147                                        '<strong>Phone: </strong>' +
1148                                        (phoneHref
1149                                            ? '<a class="locations-card__phone" href="'+ phoneHref +'">' + escapeHTML(contact.phone_number) + '</a>'
1150                                            : '<span>' + escapeHTML(contact.phone_number) + '</span>') +
1151                                    '</div>'
1152                                ) : '') +
1153
1154                                (contact.email ? (
1155                                    '<div class="locations-card__emailRow">' +
1156                                        '<strong>Email: </strong>' +
1157                                        (emailHref
1158                                            ? '<a class="locations-card__email" href="'+ escapeHTML(emailHref) +'">' + escapeHTML(contact.email) + '</a>'
1159                                            : '<span>' + escapeHTML(contact.email) + '</span>') +
1160                                    '</div>'
1161                                ) : '') +
1162
1163                            '</div>' +
1164
1165                            '<div class="locations-card__actions">' +
1166                                (contact.directions ? '<a class="button secondary" target="_blank" rel="noopener" href="'+ escapeHTML(contact.directions) +'">Directions</a>' : '') +
1167                            '</div>' +
1168                        '</div>' +
1169                    '</div>';
1170
1171                box.removeAttribute('data-empty');
1172            });
1173        }
1174
1175        // Hours pill next to the selector (collapsed when empty)
1176        function renderSelectedHours(){
1177            var box = document.getElementById('selected-hours');
1178            if (!box) return;
1179
1180            var id   = getSelectedId();
1181            var data = window.LOCATIONS_LINKS && window.LOCATIONS_LINKS[id];
1182            var hours = data && data.contact ? (data.contact.hours || '') : '';
1183
1184            if (hours){
1185                box.innerHTML = '<span class="sh-content"><span>' +
1186                    formatLinesSingleBr(hours) +
1187                    '</span></span>';
1188
1189                if (typeof syncSelectedHoursHeight === 'function') syncSelectedHoursHeight();
1190                box.classList.remove('is-collapsed');
1191                void box.offsetWidth; // reflow so transition fires
1192                box.classList.add('is-open');
1193            } else {
1194                box.classList.remove('is-open');
1195                box.classList.add('is-collapsed');
1196                box.innerHTML = ''; // keep only the right tab visible via CSS
1197            }
1198        }
1199
1200        // Show/hide .contact-btn depending on whether a location is selected
1201        function updateContactButtonsVisibility() {
1202            var hasLocation = !!getSelectedId();
1203
1204            $all('.contact-btn').forEach(function(btn){
1205                // If a location is selected, hide the button
1206                // Otherwise, revert to whatever CSS normally does
1207                btn.style.display = hasLocation ? 'none' : '';
1208            });
1209        }
1210
1211        // Custom menu built from the hidden <select>
1212        function initCustomLocationsMenu(){
1213            var wrapper = document.querySelector('.dropdown-wrapper.js-locations');
1214            var sel     = document.getElementById('locations-dropdown');
1215            var trig    = document.getElementById('locations-trigger');
1216            var menu    = document.getElementById('locations-menu');
1217            if (!wrapper || !sel || !trig || !menu || menu.dataset.built === '1') return;
1218
1219            var frag = document.createDocumentFragment();
1220            Array.prototype.forEach.call(sel.options, function(opt){
1221                if (!opt.value) return;
1222                var btn = document.createElement('button');
1223                btn.type = 'button';
1224                btn.className = 'option';
1225                btn.setAttribute('role','option');
1226                btn.dataset.value = opt.value;
1227                btn.textContent = opt.textContent.toUpperCase();
1228
1229                btn.addEventListener('click', function(){
1230                    sel.value = opt.value;
1231                    sel.dispatchEvent(new Event('change', {bubbles:true}));
1232                    var lab = trig.querySelector('.label'); if (lab) lab.textContent = opt.textContent.toUpperCase();
1233                    setActiveInMenu(opt.value);
1234                    closeLocationsMenu();
1235                });
1236
1237                frag.appendChild(btn);
1238            });
1239            menu.appendChild(frag);
1240            menu.dataset.built = '1';
1241
1242            syncTriggerLabelFromSelect();
1243            setActiveInMenu(sel.value || '');
1244
1245            trig.addEventListener('click', function(){
1246                if (wrapper.classList.contains('open')) closeLocationsMenu();
1247                else openLocationsMenu();
1248            });
1249            document.addEventListener('click', function(e){
1250                if (!wrapper.contains(e.target)) closeLocationsMenu();
1251            });
1252            document.addEventListener('keydown', function(e){
1253                if (e.key === 'Escape') closeLocationsMenu();
1254            });
1255
1256            function openLocationsMenu(){
1257                wrapper.classList.add('open');
1258                trig.setAttribute('aria-expanded','true');
1259                menu.hidden = false;
1260            }
1261            function closeLocationsMenu(){
1262                wrapper.classList.remove('open');
1263                trig.setAttribute('aria-expanded','false');
1264                menu.hidden = true;
1265            }
1266            function setActiveInMenu(val){
1267                menu.querySelectorAll('.option').forEach(function(b){
1268                    b.classList.toggle('is-active', b.dataset.value === val);
1269                });
1270            }
1271            function syncTriggerLabelFromSelect(){
1272                var lab = trig.querySelector('.label');
1273                if (!lab) return;
1274                var opt = sel.options[sel.selectedIndex];
1275                lab.textContent = (opt && opt.value) ? opt.textContent.toUpperCase() : (lab.dataset.default || 'LOCATION');
1276            }
1277
1278            // Sync when selection is restored by other code/localStorage
1279            document.addEventListener('location:change', function(){
1280                syncTriggerLabelFromSelect();
1281                setActiveInMenu(sel.value || '');
1282            });
1283        }
1284
1285        // Height sync (make hours pill match trigger height)
1286        function syncSelectedHoursHeight(){
1287            var base = document.getElementById('locations-trigger') || document.getElementById('locations-dropdown');
1288            var box  = document.getElementById('selected-hours');
1289            if (!base || !box) return;
1290            var h = base.offsetHeight;
1291            if (h) box.style.height = h + 'px';
1292        }
1293        function observeSelectHeight(){
1294            var base = document.getElementById('locations-trigger');
1295            if (!base) return;
1296            if ('ResizeObserver' in window) {
1297                var ro = new ResizeObserver(syncSelectedHoursHeight);
1298                ro.observe(base);
1299            } else {
1300                window.addEventListener('resize', syncSelectedHoursHeight);
1301            }
1302            if (document.fonts && document.fonts.ready) {
1303                document.fonts.ready.then(syncSelectedHoursHeight).catch(function(){});
1304            }
1305        }
1306
1307        // --- Require-location gate for links -------------------------------
1308        function showLocationPrompt() {
1309            // Prefer modal if present
1310            var modal = document.getElementById('location-needed-modal');
1311            if (modal) {
1312                modal.hidden = false;
1313                modal.setAttribute('aria-hidden','false');
1314                // Try to focus a useful control
1315                var focus = modal.querySelector('#locations-dropdown-modal, [data-close], button, [href], input, select, textarea');
1316                if (focus) focus.focus();
1317                return;
1318            }
1319            // Fallback: open the in-header custom menu
1320            var wrapper = document.querySelector('.dropdown-wrapper.js-locations');
1321            var trig    = document.getElementById('locations-trigger');
1322            if (wrapper && trig && !wrapper.classList.contains('open')) {
1323                trig.click(); // toggles the menu open
1324            }
1325        }
1326
1327        // Intercept clicks on any element that requires a location but has no link yet
1328        document.addEventListener('click', function(e){
1329            var a = e.target.closest('[data-requires-location]');
1330            if (!a) return;
1331
1332            // Only gate when no link has been applied yet
1333            if (a.dataset.hasLink !== '1') {
1334                e.preventDefault();
1335                e.stopPropagation();
1336
1337                // Remember what the user tried to open so we can go there after selection
1338                pendingNav = {
1339                    path: a.getAttribute('data-location-link') || '', // e.g. "brand_links.mischief_link" or "main_shop_link"
1340                    target: a.getAttribute('target') || ''
1341                };
1342
1343                showLocationPrompt();
1344            }
1345        });
1346
1347        // (Optional) keyboard activation support for Enter/Space on non-anchor elements
1348        document.addEventListener('keydown', function(e){
1349            if (e.key !== 'Enter' && e.key !== ' ') return;
1350            var el = document.activeElement;
1351            if (!el || !el.matches('[data-requires-location]')) return;
1352            if (el.dataset.hasLink !== '1') {
1353                e.preventDefault();
1354
1355                // Also capture pending nav for keyboard-triggered activations
1356                pendingNav = {
1357                    path: el.getAttribute('data-location-link') || '',
1358                    target: el.getAttribute('target') || ''
1359                };
1360
1361                showLocationPrompt();
1362            }
1363        });
1364
1365        // --- NEW: when clicking "Shop Now" on a single-location page, store that location ---
1366        document.addEventListener('click', function(e){
1367            var btn = e.target.closest('.js-location-shop[data-location-id]');
1368            if (!btn) return;
1369
1370            var id = btn.getAttribute('data-location-id');
1371            if (!id) return;
1372
1373            setSelectedId(id);
1374        });
1375
1376        // When the location changes, also update .contact-btn visibility
1377        document.addEventListener('location:change', function () {
1378            updateContactButtonsVisibility();
1379        });
1380
1381        // EVENTS
1382
1383        // Hidden select change (from menu click or direct)
1384        document.addEventListener('change', function(e){
1385            var main = document.getElementById('locations-dropdown');
1386            if (e.target === main) {
1387                setSelectedId(main.value || '');
1388                applyLinks();
1389                renderLocationInfoAll();
1390                renderSelectedHours();
1391
1392                // 1) If user had clicked something that needed a location, go there now
1393                var didNavigate = maybeNavigatePending();
1394
1395                // 2) Otherwise, if we're on a /menu-.../ page, redirect to the selected location's menu
1396                if (!didNavigate) {
1397                    maybeRedirectMenuPage();
1398                }
1399            }
1400        });
1401
1402        // Optional modal select change support (if you use one)
1403        document.addEventListener('change', function(e){
1404            var modalSel = document.getElementById('locations-dropdown-modal');
1405            if (e.target === modalSel) {
1406                setSelectedId(modalSel.value || '');
1407                applyLinks();
1408                renderLocationInfoAll();
1409                renderSelectedHours();
1410
1411                // Close modal if present
1412                var modal = document.getElementById('location-needed-modal');
1413                if (modal) { modal.hidden = true; modal.setAttribute('aria-hidden','true'); }
1414
1415                // 1) Attempt pending redirect first
1416                var didNavigate = maybeNavigatePending();
1417
1418                // 2) Otherwise, if we're on a /menu-.../ page, redirect to the selected location's menu
1419                if (!didNavigate) {
1420                    maybeRedirectMenuPage();
1421                }
1422            }
1423        });
1424
1425        // INIT
1426        function init() {
1427            syncSelects(getSelectedId() || '');
1428            applyLinks();
1429            renderLocationInfoAll();
1430            renderSelectedHours();
1431            updateContactButtonsVisibility(); // ensure correct initial state
1432
1433            initCustomLocationsMenu();
1434            syncSelectedHoursHeight();
1435            observeSelectHeight();
1436        }
1437        if (document.readyState !== 'loading') init();
1438        else document.addEventListener('DOMContentLoaded', init);
1439
1440        // Optional debug hooks
1441        window.applyLocationLinks = applyLinks;
1442        window.renderLocationInfoAll = renderLocationInfoAll;
1443        window.renderSelectedHours = renderSelectedHours;
1444        window.setSelectedLocationId = setSelectedId;
1445    })();
1446    </script>
1446
1447    
1448	<div class="popup-out">
1449		<div class="age-verification-popup">
1450			<div class="special-oval-box">
1451				<div class="special-oval-inside">
1452					<div class="title-popup">
1453						<h2>You must be 21+ to visit our website.</h2>
1454					</div>
1455					<div class="explanation-popup">
1456						<p>Verify your age to shop local.</p>
1457					</div>
1458					<div class="buttons-popup">
1459						<a href="javascript:;" class="button go_on">I am 21+</a>
1460						<a href="javascript:;" class="button secondary go_out">I am under 21</a>
1461					</div>
1462				</div>
1463			</div>
1464		</div>
1465	</div>
1466
1467<div id="mobileMenu">
1468    <div class="menu_mobile_container">
1469<div class="menu-primary-nav-container"><ul id="primary-menu" class="menu main_menu"><li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1211"><a href="#" class="menu-link" data-requires-location="1" data-location-link="main_shop_link" data-has-link="0">Menu</a></li>
1470<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-787"><a href="/rewards/">Rewards</a></li>
1471<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-785"><a href="/brands/">Our Brands</a></li>
1472<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-786"><a href="#">Learn</a><span class='mobile_drop'>  <svg class='drop_arrow' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' width='512' height='298' shape-rendering='geometricPrecision' text-rendering='geometricPrecision' image-rendering='optimizeQuality' fill-rule='evenodd' clip-rule='evenodd' viewBox='0 0 512 298.04'><path fill-rule='nonzero' d='M12.08 70.78c-16.17-16.24-16.09-42.54.15-58.7 16.25-16.17 42.54-16.09 58.71.15L256 197.76 441.06 12.23c16.17-16.24 42.46-16.32 58.71-.15 16.24 16.16 16.32 42.46.15 58.7L285.27 285.96c-16.24 16.17-42.54 16.09-58.7-.15L12.08 70.78z'/></svg></span>
1473<ul class="sub-menu">
1474	<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1023"><a href="/blog/">Blog</a></li>
1475	<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1185"><a href="https://nobogoods.com/faqs/">FAQs</a></li>
1476</ul>
1477</li>
1478<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-739"><a href="https://nobogoods.com/about/">About</a><span class='mobile_drop'>  <svg class='drop_arrow' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' width='512' height='298' shape-rendering='geometricPrecision' text-rendering='geometricPrecision' image-rendering='optimizeQuality' fill-rule='evenodd' clip-rule='evenodd' viewBox='0 0 512 298.04'><path fill-rule='nonzero' d='M12.08 70.78c-16.17-16.24-16.09-42.54.15-58.7 16.25-16.17 42.54-16.09 58.71.15L256 197.76 441.06 12.23c16.17-16.24 42.46-16.32 58.71-.15 16.24 16.16 16.32 42.46.15 58.7L285.27 285.96c-16.24 16.17-42.54 16.09-58.7-.15L12.08 70.78z'/></svg></span>
1479<ul class="sub-menu">
1480	<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1020"><a href="https://nobogoods.com/contact/">Contact</a></li>
1481	<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1021"><a target="_blank" href="https://www.growray.com/">GrowRay</a></li>
1482</ul>
1483</li>
1484<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-1024"><a href="/locations/">Locations</a><span class='mobile_drop'>  <svg class='drop_arrow' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' width='512' height='298' shape-rendering='geometricPrecision' text-rendering='geometricPrecision' image-rendering='optimizeQuality' fill-rule='evenodd' clip-rule='evenodd' viewBox='0 0 512 298.04'><path fill-rule='nonzero' d='M12.08 70.78c-16.17-16.24-16.09-42.54.15-58.7 16.25-16.17 42.54-16.09 58.71.15L256 197.76 441.06 12.23c16.17-16.24 42.46-16.32 58.71-.15 16.24 16.16 16.32 42.46.15 58.7L285.27 285.96c-16.24 16.17-42.54 16.09-58.7-.15L12.08 70.78z'/></svg></span>
1485<ul class="sub-menu">
1486	<li class="menu-item menu-item-type-post_type menu-item-object-location menu-item-1693"><a href="https://nobogoods.com/locations/benton-harbor-mi/">Benton Harbor, MI</a></li>
1487	<li class="menu-item menu-item-type-post_type menu-item-object-location menu-item-1692"><a href="https://nobogoods.com/locations/edwardsburg-mi/">Edwardsburg, MI</a></li>
1488	<li class="menu-item menu-item-type-post_type menu-item-object-location menu-item-1690"><a href="https://nobogoods.com/locations/muskegon-mi/">Muskegon, MI</a></li>
1489	<li class="menu-item menu-item-type-post_type menu-item-object-location menu-item-1689"><a href="https://nobogoods.com/locations/south-haven-mi/">South Haven, MI</a></li>
1490	<li class="menu-item menu-item-type-post_type menu-item-object-location menu-item-1687"><a href="https://nobogoods.com/locations/denver-co/">Denver, CO</a></li>
1491	<li class="menu-item menu-item-type-post_type menu-item-object-location menu-item-1688"><a href="https://nobogoods.com/locations/lakemoor-il/">Lakemoor, IL</a></li>
1492	<li class="menu-item menu-item-type-post_type menu-item-object-location menu-item-1874"><a href="https://nobogoods.com/locations/northeast-minneapolis-mn/">NE Minneapolis, MN</a></li>
1493</ul>
1494</li>
1495</ul></div>    </div>
1496</div>
1496<script defer async src='https://cdn.trustindex.io/loader-cert.js?7186009583245804124651c68a3'></script>
1496
1497
1498<!-- Google Tag Manager (noscript) -->
vendor: 69 bytes, lines 1498-1499
1498
1499<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
1499GTM-WPD7GXFF
vendor: 85 bytes, lines 1499-1500
1499"
1500height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
1501<!-- End Google Tag Manager (noscript) -->
1502
1503
1504<!-- Location required modal (now with dropdown) -->
1505<div id="location-needed-modal" class="location-modal" hidden aria-hidden="true" role="dialog" aria-modal="true" aria-labelledby="location-modal-title">
1506  <div class="location-modal__dialog" role="document">
1507    <button type="button" class="location-modal__close" data-close aria-label="Close">×</button>
1508    <h3 id="location-modal-title">Find your <span>NOBO</span></h3>
1509    <p>In order to best serve you, please select your nearest NOBO location.</p>
1510
1511    <label for="locations-dropdown-modal" class="sr-only">Location</label>
1512    <select id="locations-dropdown-modal" class="location-select">
1513      <option value="">Select a location…</option>
1514      <!-- JS will populate options -->
1515    </select>
1516
1517    <div class="location-modal__hint">Your choice is remembered for next time.</div>
1518
1519    <div class="location-modal__actions">
1520      <a href="#" class="button" data-close>Close</a>
1521    </div>
1522  </div>
1523</div>
1524
1525<style>
1526.location-modal{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.5);z-index:10000}
1527.location-modal[hidden]{display:none}
1528#location-modal-title{margin-bottom: 10px; }
1529#location-modal-title span{margin-bottom: 10px; color: #0d6797; font-size: 1.8rem;}
1530.location-modal__dialog p{margin-bottom: 10px;}
1531.location-modal__dialog{position:relative;background:#fff;max-width:480px;width:92%;padding:22px 22px 16px;border-radius:12px;box-shadow:0 10px 40px rgba(0,0,0,.2)}
1532.location-modal__close{position:absolute;right:12px;top:8px;background:transparent;border:0;font-size:26px;line-height:1;cursor:pointer}
1533.location-select{width:100%;margin:10px 0 6px;padding:10px 12px;font-size:16px;border:1px solid #ddd;border-radius:8px}
1534.location-modal__hint{font-size:12px;color:#666;margin-bottom:10px}
1535.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,1px,1px);white-space:nowrap;border:0}
1536</style>
1537
1538<script>
1539(function(){
1540  // === If you already have the earlier helpers in place (LOCATIONS_LINKS, setSelectedId, applyLinks, etc.),
1541  // you can keep them. The code below is a drop-in that adds modal support and syncs both dropdowns. ===
1542
1543  // Ensure the global data map exists (should be printed in wp_footer from PHP)
1544  window.LOCATIONS_LINKS = window.LOCATIONS_LINKS || {};
1545
1546  var KEY = 'site_location_id';
1547
1548  function getSelectedId() {
1549    var sel = document.getElementById('locations-dropdown');
1550    if (sel && sel.value) return sel.value;
1551    return localStorage.getItem(KEY) || '';
1552  }
1553  function syncSelects(id) {
1554    var main = document.getElementById('locations-dropdown');
1555    var modal = document.getElementById('locations-dropdown-modal');
1556    if (main && main.value !== id) main.value = id || '';
1557    if (modal && modal.value !== id) modal.value = id || '';
1558  }
1559  function setSelectedId(id) {
1560    if (!id) { localStorage.removeItem(KEY); }
1561    else { localStorage.setItem(KEY, id); }
1562    syncSelects(id || '');
1563    document.dispatchEvent(new CustomEvent('location:change', { detail: { id:id || '' } }));
1564  }
1565
1566  // Get nested value like "category_links.pre-roll_link"
1567  function getPath(obj, path) {
1568    if (!obj || !path) return '';
1569    var parts = String(path).split('.');
1570    var cur = obj;
1571    for (var i=0;i<parts.length;i++){
1572      if (cur == null) return '';
1573      cur = cur[parts[i]];
1574    }
1575    return (typeof cur === 'string') ? cur : '';
1576  }
1577
1578  function applyLinks() {
1579    var id   = getSelectedId();
1580    var data = window.LOCATIONS_LINKS && window.LOCATIONS_LINKS[id];
1581    var nodes = document.querySelectorAll('[data-location-link]');
1582    nodes.forEach(function(el){
1583      var path = el.getAttribute('data-location-link'); // e.g. "main_shop_link" or "category_links.edibles_link"
1584      var url  = data ? getPath(data, path) : '';
1585      if (!url && data && path.indexOf('category_links.') === 0) {
1586        url = data.main_shop_link || '';
1587      }
1588      if (url) {
1589        if (el.tagName === 'A' || el.hasAttribute('href')) el.setAttribute('href', url);
1590        el.dataset.hasLink = '1';
1591        el.classList.add('location-linked');
1592      } else {
1593        if (el.tagName === 'A' || el.hasAttribute('href')) el.setAttribute('href', '');
1594        el.dataset.hasLink = '0';
1595        el.classList.remove('location-linked');
1596      }
1597      var textKey = el.getAttribute('data-location-text');
1598      if (textKey && data && data[textKey]) el.textContent = data[textKey];
1599    });
1600  }
1601
1602  // Build modal select options from main select or from LOCATIONS_LINKS
1603  function buildModalSelect() {
1604    var modalSel = document.getElementById('locations-dropdown-modal');
1605    if (!modalSel) return;
1606
1607    // Only build once (if it only has the placeholder)
1608    if (modalSel.options.length > 1) return;
1609
1610    var main = document.getElementById('locations-dropdown');
1611    if (main && main.options.length > 1) {
1612      // Clone options from main
1613      for (var i=0; i<main.options.length; i++) {
1614        var opt = main.options[i];
1615        if (!opt.value) continue; // skip placeholder
1616        var o = document.createElement('option');
1617        o.value = opt.value;
1618        o.textContent = opt.textContent;
1619        modalSel.appendChild(o);
1620      }
1621    } else {
1622      // Build from LOCATIONS_LINKS
1623      var map = window.LOCATIONS_LINKS || {};
1624      var ids = Object.keys(map).sort(function(a,b){
1625        // sort by title
1626        var ta = (map[a].title||'').toLowerCase();
1627        var tb = (map[b].title||'').toLowerCase();
1628        if (ta < tb) return -1;
1629        if (ta > tb) return 1;
1630        return 0;
1631      });
1632      ids.forEach(function(id){
1633        var o = document.createElement('option');
1634        o.value = id;
1635        o.textContent = map[id].title || ('Location ' + id);
1636        modalSel.appendChild(o);
1637      });
1638    }
1639  }
1640
1641  function openModal() {
1642    var m = document.getElementById('location-needed-modal');
1643    if (!m) return alert('Please select a location first.');
1644    buildModalSelect();
1645    // preselect current id
1646    syncSelects( getSelectedId() || '' );
1647    m.hidden = false;
1648    m.setAttribute('aria-hidden', 'false');
1649    var sel = document.getElementById('locations-dropdown-modal');
1650    if (sel) sel.focus();
1651  }
1652  function closeModal() {
1653    var m = document.getElementById('location-needed-modal');
1654    if (!m) return;
1655    m.hidden = true;
1656    m.setAttribute('aria-hidden', 'true');
1657  }
1658
1659  // Events
1660
1661  // 1) Main dropdown (page header/footer one)
1662  document.addEventListener('change', function(e){
1663    var main = document.getElementById('locations-dropdown');
1664    if (e.target === main) {
1665      setSelectedId(main.value || '');
1666      applyLinks();
1667    }
1668  }, {passive:true});
1669
1670  // 2) Modal dropdown
1671  document.addEventListener('change', function(e){
1672    var modalSel = document.getElementById('locations-dropdown-modal');
1673    if (e.target === modalSel) {
1674      setSelectedId(modalSel.value || '');
1675      applyLinks();
1676      closeModal();
1677    }
1678  }, {passive:true});
1679
1680  // 3) Intercept clicks on elements that require a location
1681  document.addEventListener('click', function(e){
1682    // Close modal if clicking overlay or [data-close]
1683    if (e.target.matches('#location-needed-modal [data-close], #location-needed-modal')) {
1684      e.preventDefault();
1685      closeModal();
1686      return;
1687    }
1688    var a = e.target.closest('[data-requires-location]');
1689    if (!a) return;
1690    if (a.dataset.hasLink !== '1') {
1691      e.preventDefault();
1692      openModal();
1693    }
1694  });
1695
1696  document.addEventListener('keydown', function(e){
1697    if (e.key === 'Escape') closeModal();
1698  });
1699
1700  // Init on load: sync any saved selection and apply links
1701  function init() {
1702    syncSelects( getSelectedId() || '' );
1703    applyLinks();
1704  }
1705  if (document.readyState !== 'loading') init();
1706  else document.addEventListener('DOMContentLoaded', init);
1707
1708  // Expose for debugging if needed
1709  window.applyLocationLinks = applyLinks;
1710})();
1711</script>
1711
1712
1713
1714
1715<!-- Fix for overflow on Mobile when menu is open --->
1716
1717  
1717<script>
1718    const mobileMenu = document.getElementById('mobileMenu');
1719
1720    const observer = new MutationObserver(() => {
1721      if (mobileMenu.classList.contains('active')) {
1722        document.body.style.overflow = 'hidden';
1723      } else {
1724        document.body.style.overflow = '';
1725      }
1726    });
1727
1728    observer.observe(mobileMenu, { attributes: true, attributeFilter: ['class'] });
1729  </script>
1729
1730
1731	
1731<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4bc70e2c01a94c73b74392e4234840661791215815920" integrity="sha512-L0ha0OXavK/8okipN9F8BtP84dg9DUhPERbBXzwI6dgTA55d2+yweo3pn5CSFYs45/r8md2+xvUPtTdvTNRfjA==" data-cf-beacon='{"version":"2024.11.0","token":"cf3a12e877e647bc8bad5eb5356e59ee","r":1,"spa":2}' crossorigin="anonymous"></script>
1731
1732</body>
1733</html>
1734
1735<!-- Cache served by breeze CACHE (Desktop) - Last modified: Wed, 07 Oct 2026 21:07:58 GMT -->

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.