{"id":131,"date":"2025-12-05T22:49:13","date_gmt":"2025-12-05T22:49:13","guid":{"rendered":"https:\/\/grasslandco.com\/?page_id=131"},"modified":"2025-12-05T22:53:48","modified_gmt":"2025-12-05T22:53:48","slug":"personalized-budtender","status":"publish","type":"page","link":"https:\/\/grasslandco.com\/?page_id=131","title":{"rendered":"Personalized Budtender"},"content":{"rendered":"\n<div id=\"canna-quiz-root\">\n  <style>\n    #canna-quiz-root {\n      font-family: system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif;\n      display: flex;\n      justify-content: center;\n      padding: 24px 16px;\n      box-sizing: border-box;\n    }\n\n    .canna-quiz-wrapper {\n      width: 100%;\n      max-width: 520px;\n      background: #050508;\n      color: #f9fafb;\n      border-radius: 20px;\n      box-shadow: 0 18px 40px rgba(0, 0, 0, 0.35);\n      padding: 28px 22px 22px;\n      box-sizing: border-box;\n      position: relative;\n      overflow: hidden;\n    }\n\n    @media (min-width: 640px) {\n      .canna-quiz-wrapper {\n        padding: 32px 28px 26px;\n      }\n    }\n\n    .canna-quiz-header {\n      display: flex;\n      flex-direction: column;\n      gap: 6px;\n      margin-bottom: 18px;\n    }\n\n    .canna-quiz-brand {\n      display: flex;\n      justify-content: flex-start;\n      margin-bottom: 4px;\n    }\n\n    .canna-quiz-brand img {\n      height: 22px;\n      width: auto;\n      display: block;\n    }\n\n    .canna-quiz-eyebrow {\n      font-size: 12px;\n      text-transform: uppercase;\n      letter-spacing: 0.12em;\n      color: #9ca3af;\n    }\n\n    .canna-quiz-title {\n      font-size: 22px;\n      line-height: 1.2;\n      font-weight: 650;\n    }\n\n    .canna-quiz-subtitle {\n      font-size: 14px;\n      color: #9ca3af;\n    }\n\n    .canna-quiz-progress {\n      position: relative;\n      width: 100%;\n      height: 6px;\n      border-radius: 999px;\n      background: #111827;\n      overflow: hidden;\n      margin: 14px 0 18px;\n    }\n\n    .canna-quiz-progress-bar {\n      position: absolute;\n      inset: 0;\n      width: 0;\n      background: linear-gradient(90deg, #22c55e, #a855f7);\n      transition: width 0.25s ease-out;\n    }\n\n    .canna-quiz-step-label {\n      font-size: 13px;\n      color: #9ca3af;\n      margin-bottom: 6px;\n    }\n\n    .canna-quiz-step {\n      display: none;\n      animation: cq-fade-in 0.2s ease-out;\n    }\n\n    .canna-quiz-step.is-active {\n      display: block;\n    }\n\n    @keyframes cq-fade-in {\n      from { opacity: 0; transform: translateY(4px); }\n      to { opacity: 1; transform: translateY(0); }\n    }\n\n    .canna-quiz-question {\n      font-size: 17px;\n      font-weight: 600;\n      margin-bottom: 14px;\n    }\n\n    .canna-quiz-options {\n      display: grid;\n      grid-template-columns: 1fr;\n      gap: 10px;\n      margin-bottom: 10px;\n    }\n\n    @media (min-width: 480px) {\n      .canna-quiz-options.cq-grid-2 {\n        grid-template-columns: repeat(2, minmax(0, 1fr));\n      }\n    }\n\n    .canna-quiz-option-btn {\n      border-radius: 999px;\n      border: 1px solid #1f2937;\n      background: #020617;\n      color: #e5e7eb;\n      padding: 11px 16px;\n      font-size: 15px;\n      text-align: left;\n      cursor: pointer;\n      display: flex;\n      align-items: center;\n      justify-content: space-between;\n      gap: 10px;\n      transition: background 0.15s ease-out, border-color 0.15s ease-out, transform 0.08s ease-out;\n    }\n\n    .canna-quiz-option-btn span.cq-label-main {\n      font-weight: 500;\n    }\n\n    .canna-quiz-option-btn span.cq-label-sub {\n      display: block;\n      font-size: 13px;\n      color: #9ca3af;\n      margin-top: 2px;\n    }\n\n    .canna-quiz-option-btn:hover {\n      background: #020617;\n      border-color: #4b5563;\n      transform: translateY(-1px);\n    }\n\n    .canna-quiz-option-btn:active {\n      transform: translateY(0);\n    }\n\n    .canna-quiz-option-btn.is-selected {\n      border-color: #22c55e;\n      background: radial-gradient(circle at top left, rgba(34,197,94,0.2), #020617);\n    }\n\n    .canna-quiz-footer {\n      display: flex;\n      align-items: center;\n      justify-content: space-between;\n      margin-top: 14px;\n      font-size: 13px;\n      color: #6b7280;\n    }\n\n    .canna-quiz-back-btn {\n      background: none;\n      border: none;\n      color: #9ca3af;\n      font-size: 13px;\n      padding: 4px 0;\n      cursor: pointer;\n      display: inline-flex;\n      align-items: center;\n      gap: 4px;\n    }\n\n    .canna-quiz-back-btn:hover {\n      color: #e5e7eb;\n    }\n\n    .canna-quiz-email-form {\n      display: flex;\n      flex-direction: column;\n      gap: 10px;\n      margin-top: 8px;\n    }\n\n    .canna-quiz-email-input {\n      width: 100%;\n      border-radius: 999px;\n      border: 1px solid #1f2937;\n      background: #020617;\n      color: #f9fafb;\n      padding: 10px 14px;\n      font-size: 15px;\n      box-sizing: border-box;\n    }\n\n    .canna-quiz-email-input::placeholder {\n      color: #6b7280;\n    }\n\n    .canna-quiz-primary-btn {\n      border-radius: 999px;\n      border: none;\n      background: linear-gradient(90deg, #22c55e, #a855f7);\n      color: #020617;\n      font-weight: 600;\n      padding: 11px 18px;\n      font-size: 15px;\n      cursor: pointer;\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      gap: 6px;\n      width: 100%;\n      box-sizing: border-box;\n    }\n\n    .canna-quiz-primary-btn:disabled {\n      opacity: 0.45;\n      cursor: default;\n    }\n\n    .canna-quiz-primary-btn:hover:not(:disabled) {\n      filter: brightness(1.05);\n    }\n\n    .canna-quiz-secondary-btn {\n      border-radius: 999px;\n      border: 1px solid #374151;\n      background: transparent;\n      color: #e5e7eb;\n      font-size: 14px;\n      padding: 9px 14px;\n      cursor: pointer;\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      gap: 6px;\n      width: 100%;\n      box-sizing: border-box;\n    }\n\n    .canna-quiz-secondary-btn:hover {\n      background: rgba(15,23,42,0.85);\n    }\n\n    .canna-quiz-error {\n      font-size: 13px;\n      color: #f97373;\n      margin-top: -2px;\n    }\n\n    .canna-quiz-legal {\n      font-size: 12px;\n      color: #6b7280;\n      line-height: 1.4;\n      margin-top: 8px;\n    }\n\n    .canna-quiz-result-card {\n      border-radius: 16px;\n      border: 1px solid #1f2937;\n      background: radial-gradient(circle at top left, rgba(34,197,94,0.18), #020617);\n      padding: 16px 16px 14px;\n      margin-top: 8px;\n    }\n\n    \/* NEW: result image styles *\/\n    .canna-quiz-result-image-wrap {\n      width: 100%;\n      border-radius: 12px;\n      overflow: hidden;\n      background: #030712;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      margin-bottom: 10px;\n      min-height: 160px;\n    }\n\n    .canna-quiz-result-image {\n      max-width: 100%;\n      height: auto;\n      display: block;\n    }\n\n    .canna-quiz-result-pill {\n      font-size: 12px;\n      text-transform: uppercase;\n      letter-spacing: 0.16em;\n      color: #a7f3d0;\n      margin-bottom: 6px;\n    }\n\n    .canna-quiz-result-title {\n      font-size: 18px;\n      font-weight: 650;\n      margin-bottom: 6px;\n    }\n\n    .canna-quiz-result-meta {\n      font-size: 13px;\n      color: #d1d5db;\n      margin-bottom: 8px;\n    }\n\n    .canna-quiz-result-list {\n      list-style: none;\n      padding: 0;\n      margin: 0 0 8px;\n      font-size: 14px;\n      color: #e5e7eb;\n    }\n\n    .canna-quiz-result-list li {\n      display: flex;\n      gap: 6px;\n      align-items: flex-start;\n      margin-bottom: 4px;\n    }\n\n    .canna-quiz-result-list li::before {\n      content: \"\u2022\";\n      color: #22c55e;\n      flex-shrink: 0;\n      margin-top: -1px;\n    }\n\n    .canna-quiz-result-cta-wrap {\n      display: flex;\n      flex-direction: column;\n      gap: 8px;\n      margin-top: 10px;\n    }\n\n    .canna-quiz-tagline {\n      font-size: 12px;\n      color: #9ca3af;\n      margin-top: 14px;\n      text-align: center;\n    }\n\n    .canna-quiz-tagline span {\n      color: #a855f7;\n    }\n\n    \/* === Browse View Styles === *\/\n    .canna-browse-view {\n      display: none;\n      animation: cq-fade-in 0.2s ease-out;\n    }\n\n    .canna-browse-header {\n      margin-bottom: 12px;\n    }\n\n    .canna-browse-title {\n      font-size: 18px;\n      font-weight: 650;\n      margin-bottom: 4px;\n    }\n\n    .canna-browse-subtitle {\n      font-size: 14px;\n      color: #9ca3af;\n    }\n\n    .canna-browse-filters {\n      display: flex;\n      flex-direction: column;\n      gap: 10px;\n      margin: 14px 0 12px;\n    }\n\n    @media (min-width: 540px) {\n      .canna-browse-filters {\n        flex-direction: row;\n        justify-content: space-between;\n        gap: 12px;\n      }\n    }\n\n    .canna-browse-filter-group {\n      flex: 1;\n    }\n\n    .canna-browse-filter-label {\n      font-size: 12px;\n      text-transform: uppercase;\n      letter-spacing: 0.12em;\n      color: #6b7280;\n      margin-bottom: 6px;\n    }\n\n    .canna-browse-filter-pills {\n      display: flex;\n      flex-wrap: wrap;\n      gap: 6px;\n    }\n\n    .canna-browse-pill-btn {\n      border-radius: 999px;\n      border: 1px solid #1f2937;\n      background: #020617;\n      color: #e5e7eb;\n      font-size: 13px;\n      padding: 5px 10px;\n      cursor: pointer;\n      display: inline-flex;\n      align-items: center;\n      gap: 4px;\n    }\n\n    .canna-browse-pill-btn.is-active {\n      border-color: #22c55e;\n      background: rgba(34,197,94,0.12);\n    }\n\n    .canna-browse-grid {\n      display: grid;\n      grid-template-columns: 1fr;\n      gap: 12px;\n      margin-top: 6px;\n    }\n\n    @media (min-width: 540px) {\n      .canna-browse-grid {\n        grid-template-columns: repeat(2, minmax(0, 1fr));\n      }\n    }\n\n    .canna-browse-card {\n      border-radius: 14px;\n      border: 1px solid #1f2937;\n      background: #020617;\n      padding: 10px 10px 12px;\n      display: flex;\n      flex-direction: column;\n      gap: 8px;\n    }\n\n    .canna-browse-image-wrap {\n      width: 100%;\n      border-radius: 12px;\n      overflow: hidden;\n      background: #030712;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      min-height: 140px;\n    }\n\n    .canna-browse-image {\n      max-width: 100%;\n      height: auto;\n      display: block;\n    }\n\n    .canna-browse-meta-row {\n      display: flex;\n      flex-wrap: wrap;\n      gap: 6px;\n      font-size: 12px;\n      color: #9ca3af;\n    }\n\n    .canna-browse-meta-pill {\n      border-radius: 999px;\n      border: 1px solid #374151;\n      padding: 3px 8px;\n    }\n\n    .canna-browse-card-title {\n      font-size: 15px;\n      font-weight: 600;\n    }\n\n    .canna-browse-card-note {\n      font-size: 13px;\n      color: #d1d5db;\n    }\n\n    .canna-browse-card-cta {\n      margin-top: 4px;\n    }\n\n    .canna-browse-back-row {\n      margin-top: 14px;\n      display: flex;\n      justify-content: flex-start;\n    }\n\n    .canna-browse-back-btn {\n      background: none;\n      border: none;\n      color: #9ca3af;\n      font-size: 13px;\n      cursor: pointer;\n      display: inline-flex;\n      align-items: center;\n      gap: 4px;\n      padding: 0;\n    }\n\n    .canna-browse-back-btn:hover {\n      color: #e5e7eb;\n    }\n  <\/style>\n\n  <div class=\"canna-quiz-wrapper\" aria-live=\"polite\">\n    <header class=\"canna-quiz-header\">\n      <div class=\"canna-quiz-brand\">\n        <img decoding=\"async\"\n          src=\"https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2024\/06\/vice-logo_white@2x.png\"\n          alt=\"VICE\"\n          loading=\"lazy\"\n        \/>\n      <\/div>\n      <div class=\"canna-quiz-eyebrow\">Personalized recs<\/div>\n      <h2 class=\"canna-quiz-title\">Find your perfect vibe in 4 taps<\/h2>\n      <p class=\"canna-quiz-subtitle\">\n        Answer a few quick questions to get a product picked for how you actually want to feel.\n      <\/p>\n    <\/header>\n\n    <div class=\"canna-quiz-progress\" aria-hidden=\"true\">\n      <div class=\"canna-quiz-progress-bar\" id=\"canna-quiz-progress-bar\"><\/div>\n    <\/div>\n\n    <div class=\"canna-quiz-step-label\" id=\"canna-quiz-step-label\">Step 1 of 5<\/div>\n\n    <!-- QUIZ FLOW VIEW -->\n    <main id=\"canna-quiz-main\">\n      <!-- Step 1: Age gate -->\n      <section class=\"canna-quiz-step is-active\" data-step=\"1\" aria-label=\"Age verification\">\n        <div class=\"canna-quiz-question\">First things first \u2014 are you 21 or older?<\/div>\n        <div class=\"canna-quiz-options cq-grid-2\">\n          <button class=\"canna-quiz-option-btn\" data-value=\"yes\" data-question=\"ageGate\">\n            <span class=\"cq-label-main\">Yes, I\u2019m 21+<\/span>\n          <\/button>\n          <button class=\"canna-quiz-option-btn\" data-value=\"no\" data-question=\"ageGate\">\n            <span class=\"cq-label-main\">No<\/span>\n          <\/button>\n        <\/div>\n        <p class=\"canna-quiz-legal\">\n          This experience is designed only for adults 21+ where products are legal. Please consume responsibly.\n        <\/p>\n      <\/section>\n\n      <!-- Step 2: Desired experience -->\n      <section class=\"canna-quiz-step\" data-step=\"2\" aria-label=\"Desired experience\">\n        <div class=\"canna-quiz-question\">What kind of experience are you looking for?<\/div>\n        <div class=\"canna-quiz-options\">\n          <button class=\"canna-quiz-option-btn\" data-value=\"relax\" data-question=\"experienceGoal\">\n            <span>\n              <span class=\"cq-label-main\">Relax<\/span>\n              <span class=\"cq-label-sub\">Take the edge off without overdoing it.<\/span>\n            <\/span>\n          <\/button>\n          <button class=\"canna-quiz-option-btn\" data-value=\"socialize\" data-question=\"experienceGoal\">\n            <span>\n              <span class=\"cq-label-main\">Socialize<\/span>\n              <span class=\"cq-label-sub\">Go out, have fun, and stay chatty.<\/span>\n            <\/span>\n          <\/button>\n          <button class=\"canna-quiz-option-btn\" data-value=\"sleep\" data-question=\"experienceGoal\">\n            <span>\n              <span class=\"cq-label-main\">Sleep<\/span>\n              <span class=\"cq-label-sub\">Wind down and stay asleep.<\/span>\n            <\/span>\n          <\/button>\n          <button class=\"canna-quiz-option-btn\" data-value=\"melt\" data-question=\"experienceGoal\">\n            <span>\n              <span class=\"cq-label-main\">Melt into the couch<\/span>\n              <span class=\"cq-label-sub\">Heavy, cozy, movie-night vibes.<\/span>\n            <\/span>\n          <\/button>\n        <\/div>\n      <\/section>\n\n      <!-- Step 3: Experience level -->\n      <section class=\"canna-quiz-step\" data-step=\"3\" aria-label=\"Experience level\">\n        <div class=\"canna-quiz-question\">What\u2019s your experience level with this kind of thing?<\/div>\n        <div class=\"canna-quiz-options\">\n          <button class=\"canna-quiz-option-btn\" data-value=\"beginner\" data-question=\"experienceLevel\">\n            <span>\n              <span class=\"cq-label-main\">Beginner<\/span>\n              <span class=\"cq-label-sub\">New here or it\u2019s been a while.<\/span>\n            <\/span>\n          <\/button>\n          <button class=\"canna-quiz-option-btn\" data-value=\"intermediate\" data-question=\"experienceLevel\">\n            <span>\n              <span class=\"cq-label-main\">I\u2019ve done this before<\/span>\n              <span class=\"cq-label-sub\">Comfortable, just want the right vibe.<\/span>\n            <\/span>\n          <\/button>\n          <button class=\"canna-quiz-option-btn\" data-value=\"pro\" data-question=\"experienceLevel\">\n            <span>\n              <span class=\"cq-label-main\">420 all day<\/span>\n              <span class=\"cq-label-sub\">I know my way around the menu.<\/span>\n            <\/span>\n          <\/button>\n        <\/div>\n      <\/section>\n\n      <!-- Step 4: Preferred method -->\n      <section class=\"canna-quiz-step\" data-step=\"4\" aria-label=\"Preferred method\">\n        <div class=\"canna-quiz-question\">How do you prefer to consume?<\/div>\n        <div class=\"canna-quiz-options cq-grid-2\">\n          <button class=\"canna-quiz-option-btn\" data-value=\"gummies\" data-question=\"method\">\n            <span>\n              <span class=\"cq-label-main\">Gummies<\/span>\n              <span class=\"cq-label-sub\">Tasty, slow-build, easy to dose.<\/span>\n            <\/span>\n          <\/button>\n          <button class=\"canna-quiz-option-btn\" data-value=\"drinks\" data-question=\"method\">\n            <span>\n              <span class=\"cq-label-main\">Drinks<\/span>\n              <span class=\"cq-label-sub\">Sip and socialize.<\/span>\n            <\/span>\n          <\/button>\n          <button class=\"canna-quiz-option-btn\" data-value=\"smoking\" data-question=\"method\">\n            <span>\n              <span class=\"cq-label-main\">Smoking<\/span>\n              <span class=\"cq-label-sub\">Classic flower or pre-rolls.<\/span>\n            <\/span>\n          <\/button>\n          <button class=\"canna-quiz-option-btn\" data-value=\"vaping\" data-question=\"method\">\n            <span>\n              <span class=\"cq-label-main\">Vaping<\/span>\n              <span class=\"cq-label-sub\">Discreet, fast-acting.<\/span>\n            <\/span>\n          <\/button>\n        <\/div>\n      <\/section>\n\n      <!-- Step 5: Email capture -->\n      <section class=\"canna-quiz-step\" data-step=\"5\" aria-label=\"Email capture\">\n        <div class=\"canna-quiz-question\">Last step \u2014 where should we send your personalized pick?<\/div>\n        <p class=\"canna-quiz-subtitle\" style=\"margin-bottom: 8px;\">\n          We\u2019ll show your result on the next screen and email it to you so you don\u2019t lose it.\n        <\/p>\n        <form class=\"canna-quiz-email-form\" id=\"canna-quiz-email-form\">\n          <input\n            type=\"email\"\n            id=\"canna-quiz-email\"\n            class=\"canna-quiz-email-input\"\n            placeholder=\"Enter your best email\"\n            autocomplete=\"email\"\n            required\n          \/>\n          <div id=\"canna-quiz-email-error\" class=\"canna-quiz-error\" style=\"display:none;\"><\/div>\n          <button\n            type=\"submit\"\n            class=\"canna-quiz-primary-btn\"\n            id=\"canna-quiz-see-result\"\n          >\n            See my result\n            <span aria-hidden=\"true\">\u2192<\/span>\n          <\/button>\n        <\/form>\n        <p class=\"canna-quiz-legal\">\n          By continuing you agree to receive occasional emails about your recommendations and related offers.\n          You can unsubscribe anytime.\n        <\/p>\n      <\/section>\n\n      <!-- Step 6: Result screen -->\n      <section class=\"canna-quiz-step\" data-step=\"6\" aria-label=\"Your recommendation\">\n        <div class=\"canna-quiz-question\">Here\u2019s what we picked for you<\/div>\n        <div class=\"canna-quiz-result-card\" id=\"canna-quiz-result-card\">\n          <!-- NEW: result image -->\n          <div class=\"canna-quiz-result-image-wrap\" id=\"canna-quiz-result-image-wrap\">\n            <img decoding=\"async\"\n              id=\"canna-quiz-result-image\"\n              class=\"canna-quiz-result-image\"\n              src=\"\"\n              alt=\"Product image\"\n              loading=\"lazy\"\n            \/>\n          <\/div>\n          <!-- END NEW -->\n\n          <div class=\"canna-quiz-result-pill\" id=\"canna-quiz-result-pill\">Personalized match<\/div>\n          <div class=\"canna-quiz-result-title\" id=\"canna-quiz-result-title\">Your product name goes here<\/div>\n          <div class=\"canna-quiz-result-meta\" id=\"canna-quiz-result-meta\">\n            Based on your answers, this is the best fit for how you want to feel tonight.\n          <\/div>\n          <ul class=\"canna-quiz-result-list\" id=\"canna-quiz-result-list\"><\/ul>\n          <div class=\"canna-quiz-result-cta-wrap\">\n            <a id=\"canna-quiz-result-link\" class=\"canna-quiz-primary-btn\" href=\"#\">\n              Shop this pick\n              <span aria-hidden=\"true\">\u2192<\/span>\n            <\/a>\n            <button type=\"button\" class=\"canna-quiz-secondary-btn\" id=\"canna-quiz-explore-more\">\n              Browse more options\n            <\/button>\n          <\/div>\n        <\/div>\n        <p class=\"canna-quiz-tagline\">\n          Not medical advice. Start low, go slow. <span>21+ only.<\/span>\n        <\/p>\n      <\/section>\n    <\/main>\n\n    <!-- BROWSE VIEW -->\n    <main id=\"canna-browse-view\" class=\"canna-browse-view\" aria-label=\"Browse more products\">\n      <div class=\"canna-browse-header\">\n        <div class=\"canna-browse-title\">Browse more options<\/div>\n        <p class=\"canna-browse-subtitle\">\n          Explore other picks that match your vibe, method, and experience level.\n        <\/p>\n      <\/div>\n\n      <div class=\"canna-browse-filters\">\n        <div class=\"canna-browse-filter-group\">\n          <div class=\"canna-browse-filter-label\">Vibe<\/div>\n          <div class=\"canna-browse-filter-pills\">\n            <button class=\"canna-browse-pill-btn\" data-browse-goal=\"all\">All<\/button>\n            <button class=\"canna-browse-pill-btn\" data-browse-goal=\"relax\">Relax<\/button>\n            <button class=\"canna-browse-pill-btn\" data-browse-goal=\"socialize\">Socialize<\/button>\n            <button class=\"canna-browse-pill-btn\" data-browse-goal=\"sleep\">Sleep<\/button>\n            <button class=\"canna-browse-pill-btn\" data-browse-goal=\"melt\">Melt<\/button>\n          <\/div>\n        <\/div>\n        <div class=\"canna-browse-filter-group\">\n          <div class=\"canna-browse-filter-label\">Method<\/div>\n          <div class=\"canna-browse-filter-pills\">\n            <button class=\"canna-browse-pill-btn\" data-browse-method=\"all\">All<\/button>\n            <button class=\"canna-browse-pill-btn\" data-browse-method=\"gummies\">Gummies<\/button>\n            <button class=\"canna-browse-pill-btn\" data-browse-method=\"drinks\">Drinks<\/button>\n            <button class=\"canna-browse-pill-btn\" data-browse-method=\"smoking\">Smoking<\/button>\n            <button class=\"canna-browse-pill-btn\" data-browse-method=\"vaping\">Vaping<\/button>\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"canna-browse-grid\" id=\"canna-browse-grid\"><\/div>\n\n      <div class=\"canna-browse-back-row\">\n        <button type=\"button\" class=\"canna-browse-back-btn\" id=\"canna-browse-back-btn\">\n          <span aria-hidden=\"true\">\u2190<\/span>\n          Back to your result\n        <\/button>\n      <\/div>\n    <\/main>\n\n    <footer class=\"canna-quiz-footer\">\n      <button type=\"button\" class=\"canna-quiz-back-btn\" id=\"canna-quiz-back-btn\" style=\"visibility:hidden;\">\n        <span aria-hidden=\"true\">\u2190<\/span>\n        Back\n      <\/button>\n      <span>Approx. 30 seconds<\/span>\n    <\/footer>\n  <\/div>\n\n  <script>\n    (function () {\n      var root = document.getElementById('canna-quiz-root');\n      if (!root) return;\n\n      var steps = root.querySelectorAll('.canna-quiz-step');\n      var progressBar = root.querySelector('#canna-quiz-progress-bar');\n      var stepLabel = root.querySelector('#canna-quiz-step-label');\n      var backBtn = root.querySelector('#canna-quiz-back-btn');\n      var emailForm = root.querySelector('#canna-quiz-email-form');\n      var emailInput = root.querySelector('#canna-quiz-email');\n      var emailError = root.querySelector('#canna-quiz-email-error');\n      var seeResultBtn = root.querySelector('#canna-quiz-see-result');\n      var exploreBtn = root.querySelector('#canna-quiz-explore-more');\n      var resultTitle = root.querySelector('#canna-quiz-result-title');\n      var resultMeta = root.querySelector('#canna-quiz-result-meta');\n      var resultList = root.querySelector('#canna-quiz-result-list');\n      var resultLink = root.querySelector('#canna-quiz-result-link');\n      var resultPill = root.querySelector('#canna-quiz-result-pill');\n\n      \/\/ NEW: result image elements\n      var resultImage = root.querySelector('#canna-quiz-result-image');\n      var resultImageWrap = root.querySelector('#canna-quiz-result-image-wrap');\n\n      var quizMain = root.querySelector('#canna-quiz-main');\n      var browseView = root.querySelector('#canna-browse-view');\n      var browseGrid = root.querySelector('#canna-browse-grid');\n      var browseBackBtn = root.querySelector('#canna-browse-back-btn');\n      var browseGoalButtons = root.querySelectorAll('[data-browse-goal]');\n      var browseMethodButtons = root.querySelectorAll('[data-browse-method]');\n      var footer = root.querySelector('.canna-quiz-footer');\n\n      var TOTAL_STEPS = 5;\n      var currentStep = 1;\n\n      var state = {\n        ageGate: null,\n        experienceGoal: null,\n        experienceLevel: null,\n        method: null,\n        email: null\n      };\n\n      var browseState = {\n        goal: 'all',\n        method: 'all'\n      };\n\n            \/\/ PRODUCT DATABASE (from CSV)\n      var products = [\n        {\n          id: 'vape-mood-sour-diesel-thca',\n          name: 'Mood Sour Diesel THCa Vape',\n          goal: 'socialize',\n          method: 'vaping',\n          level: 'intermediate',\n          url: 'https:\/\/mood.com\/product\/thca-sour-diesel-disposable-vape\/dose-2g?snowball=LCGUY2591&utm_source=vicers&utm_campaign=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/08\/download-11.webp?resize=300,300',\n          notes: [\n            'Energizing sativa-leaning THCa vape for social confidence and talkative hangs'\n          ]\n        },\n        {\n          id: 'vape-koi-baja-blast-thca-diamonds',\n          name: 'Koi Baja Blast THCa Diamonds Vape',\n          goal: 'socialize',\n          method: 'vaping',\n          level: 'pro',\n          url: 'https:\/\/track.revoffers.com\/aff_c?offer_id=178&aff_id=9106&url_id=11497&sub1=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/10314_source_1741373260-1.jpg?resize=300,300',\n          notes: [\n            'Hard-hitting THCa diamonds blend for giggly, high-energy nights'\n          ]\n        },\n        {\n          id: 'vape-mood-d8-runtz',\n          name: 'Mood Delta 8 Runtz Vape',\n          goal: 'socialize',\n          method: 'vaping',\n          level: 'intermediate',\n          url: 'https:\/\/mood.com\/product\/hero-dose-delta-8-thc-runtz-disposable-vape\/dose-2g\/?snowball=LCGUY2591&utm_source=vicers&utm_campaign=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/download-13.webp?resize=300,300',\n          notes: [\n            'Candy-like Delta 8 blend that keeps you uplifted and functional'\n          ]\n        },\n        {\n          id: 'vape-diet-smoke-blue-dream-thcp',\n          name: 'Diet Smoke Blue Dream THCP Cartridge',\n          goal: 'relax',\n          method: 'vaping',\n          level: 'intermediate',\n          url: 'https:\/\/track.revoffers.com\/aff_c?offer_id=191&aff_id=9106&url_id=5971&sub1=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/blue-dream.webp?resize=300,300',\n          notes: [\n            'Smooth THCP-forward cart for relaxed but clear-headed everyday use'\n          ]\n        },\n        {\n          id: 'vape-secret-nature-cbd-disposable',\n          name: 'Secret Nature CBD Disposable Vapes',\n          goal: 'relax',\n          method: 'vaping',\n          level: 'beginner',\n          url: 'https:\/\/secretnaturecbd.com\/collections\/cbd-vapes\/products\/cbd-vape-pens?snowball=LCGUY2591&utm_source=vicers&utm_campaign=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/sn-cbd-vapes.webp?resize=300,300',\n          notes: [\n            'THC-free CBD disposables for fast-acting calm without a high'\n          ]\n        },\n        {\n          id: 'vape-koi-slurricane',\n          name: 'Koi Slurricane THC Vape',\n          goal: 'melt',\n          method: 'vaping',\n          level: 'pro',\n          url: 'https:\/\/track.revoffers.com\/aff_c?offer_id=178&aff_id=9106&url_id=11680&sub1=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/koi-slurricane.webp?resize=300,300',\n          notes: [\n            'Heavy indica-style effects for couch lock and deep body melt'\n          ]\n        },\n        {\n          id: 'vape-tre-house-texas-peach-cobbler',\n          name: 'TRE House Texas Peach Cobbler THCa Vape',\n          goal: 'melt',\n          method: 'vaping',\n          level: 'intermediate',\n          url: 'https:\/\/trehouse.com\/products\/texas-peach-cobbler-thca-vape\/?snowball=LCGUY2591&utm_source=vicers&utm_campaign=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/texas-peach-cobbler.webp?resize=300,300',\n          notes: [\n            'Dessert-flavored THCa clouds for chill, movie-night vibes'\n          ]\n        },\n        {\n          id: 'vape-secret-nature-thca-forbidden-fruit',\n          name: 'Secret Nature THCa Forbidden Fruit Vape',\n          goal: 'sleep',\n          method: 'vaping',\n          level: 'intermediate',\n          url: 'https:\/\/secretnaturecbd.com\/products\/forbidden-fruit-thca-vape-cart?snowball=LCGUY2591&utm_source=vicers&utm_campaign=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/forbidden-fruit.webp?resize=300,300',\n          notes: [\n            'Heavy, fruity THCa cart that eases you into bed'\n          ]\n        },\n        {\n          id: 'gummy-koi-blue-razz-d9',\n          name: 'Koi Delta 9 Blue Razz Gummies',\n          goal: 'socialize',\n          method: 'gummies',\n          level: 'intermediate',\n          url: 'https:\/\/track.revoffers.com\/aff_c?offer_id=178&aff_id=9106&url_id=11076&sub1=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/05\/d9-extra-strength-bluerazz-20ct__40613.webp?resize=300,300',\n          notes: [\n            'Extra-strength THC\/CBD gummies for couch lock and big laughs'\n          ]\n        },\n        {\n          id: 'gummy-soul-out-of-office-blood-orange',\n          name: 'SOUL Out of Office Blood Orange Gummies',\n          goal: 'relax',\n          method: 'gummies',\n          level: 'intermediate',\n          url: 'https:\/\/track.revoffers.com\/aff_c?offer_id=143&aff_id=9106&url_id=9906&sub1=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/05\/ooo-quad-pdp-2_700x700.webp?resize=300,300',\n          notes: [\n            'High CBD:THC ratio for mellow, easygoing full-body buzz'\n          ]\n        },\n        {\n          id: 'gummy-diet-smoke-cherry-lime',\n          name: 'Diet Smoke Cherry Lime THC Gummies',\n          goal: 'socialize',\n          method: 'gummies',\n          level: 'beginner',\n          url: 'https:\/\/track.revoffers.com\/aff_c?offer_id=191&aff_id=9106&url_id=6063&sub1=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/cherry-lime.webp?resize=300,300',\n          notes: [\n            'Beginner-friendly THC gummies for light, sociable energy'\n          ]\n        },\n        {\n          id: 'gummy-mood-peach-rings',\n          name: 'Mood THC Peach Rings',\n          goal: 'socialize',\n          method: 'gummies',\n          level: 'any',\n          url: 'https:\/\/mood.com\/product\/thc-peach-rings\/dose-10mg\/size-20ct\/?snowball=LCGUY2591&utm_source=vicers&utm_campaign=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/peach-rings.webp?resize=300,300',\n          notes: [\n            'Classic peach-ring gummies for balanced, upbeat hangs'\n          ]\n        },\n        {\n          id: 'gummy-canna-river-sleep',\n          name: 'Canna River Sleep Gummies',\n          goal: 'sleep',\n          method: 'gummies',\n          level: 'any',\n          url: 'https:\/\/track.revoffers.com\/aff_c?offer_id=193&aff_id=9106&url_id=6420&sub1=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/canna-river-sleep.webp?resize=300,300',\n          notes: [\n            'CBN-forward formula for winding down and staying asleep'\n          ]\n        },\n        {\n          id: 'gummy-tre-house-peach-pear',\n          name: 'TR\u0112 House Peach Pear D9 Gummies',\n          goal: 'sleep',\n          method: 'gummies',\n          level: 'intermediate',\n          url: 'https:\/\/trehouse.com\/products\/live-resin-delta-9-thc-peach-pear-gummies\/?snowball=LCGUY2591&utm_source=vicers&utm_campaign=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/tre-house-sleep.webp?resize=300,300',\n          notes: [\n            'D9 sleep gummies that mix gentle euphoria with deep relaxation'\n          ]\n        },\n        {\n          id: 'gummy-summit',\n          name: 'Summit THC Gummies',\n          goal: 'sleep',\n          method: 'gummies',\n          level: 'beginner',\n          url: 'https:\/\/summitthc.com\/products\/thc-gummies?snowball=LCGUY2591&utm_source=vicers&utm_campaign=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/summit-sleep.webp?resize=300,300',\n          notes: [\n            'Approachable THC gummy dose aimed at easing beginners into sleep'\n          ]\n        },\n        {\n          id: 'gummy-vena-no-worries',\n          name: 'Vena No Worries Extra Strength Gummies',\n          goal: 'relax',\n          method: 'gummies',\n          level: 'any',\n          url: 'https:\/\/track.revoffers.com\/aff_c?offer_id=199&aff_id=9106&url_id=6841&sub1=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/vena-no-worries.webp?resize=300,300',\n          notes: [\n            'Balanced CBD\/THC blend for stress relief and mood lift'\n          ]\n        },\n        {\n          id: 'gummy-cbdistillery-ahhh-plus',\n          name: 'CBDistillery ahhh+ THC & CBD Relief Gummies',\n          goal: 'relax',\n          method: 'gummies',\n          level: 'any',\n          url: 'https:\/\/track.revoffers.com\/aff_c?offer_id=200&aff_id=9106&url_id=6944&sub1=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/cbdistillery-ahhh.webp?resize=300,300',\n          notes: [\n            'CBD-rich relief gummies with a touch of THC for body comfort'\n          ]\n        },\n        {\n          id: 'gummy-secret-nature-dr-endo',\n          name: 'Secret Nature Dr Endo Strawberry Rhubarb Gummy',\n          goal: 'relax',\n          method: 'gummies',\n          level: 'pro',\n          url: 'https:\/\/secretnaturecbd.com\/products\/dr-endo-strawberry-rhubarb-gummies?snowball=LCGUY2591&utm_source=vicers&utm_campaign=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/dr-endo.webp?resize=300,300',\n          notes: [\n            'Potent live-resin gummies for experienced users seeking serious chill'\n          ]\n        },\n        {\n          id: 'drink-soul-out-of-office',\n          name: 'SOUL Out of Office Cucumber Melon Lime THC Drink',\n          goal: 'socialize',\n          method: 'drinks',\n          level: 'intermediate',\n          url: 'https:\/\/track.revoffers.com\/aff_c?offer_id=143&aff_id=9106&url_id=9907&sub1=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/05\/ooo-tonic-580x.webp?resize=300,300',\n          notes: [\n            'Social THC tonic that pairs well with parties and pregames'\n          ]\n        },\n        {\n          id: 'drink-mood-sodas',\n          name: 'Mood Cannabis Sodas + Seltzers',\n          goal: 'socialize',\n          method: 'drinks',\n          level: 'any',\n          url: 'https:\/\/mood.com\/product\/thc-seltzer-bundle\/?snowball=LCGUY2591&utm_source=vicers&utm_campaign=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/08\/download-14.webp?resize=300,300',\n          notes: [\n            'Sessionable THC sodas and seltzers for group hangs'\n          ]\n        },\n        {\n          id: 'drink-spruce-cocktail-packets',\n          name: 'Spruce THC Cocktail Packets',\n          goal: 'socialize',\n          method: 'drinks',\n          level: 'intermediate',\n          url: 'https:\/\/track.revoffers.com\/aff_c?offer_id=214&aff_id=9106&url_id=7866&sub1=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/spruce-packets.webp?resize=300,300',\n          notes: [\n            'THC drink mix you can stir into your own mocktails'\n          ]\n        },\n        {\n          id: 'drink-five-black-cherry',\n          name: 'five Black Cherry THC Seltzer',\n          goal: 'relax',\n          method: 'drinks',\n          level: 'intermediate',\n          url: 'https:\/\/track.revoffers.com\/aff_c?offer_id=192&aff_id=9106&url_id=6392&sub1=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/five-seltzer.webp?resize=300,300',\n          notes: [\n            'Stronger THC seltzer for deeper, longer-lasting relaxation'\n          ]\n        },\n        {\n          id: 'drink-mood-nano-syrup',\n          name: 'Mood Euphoric Nano THC Syrup',\n          goal: 'socialize',\n          method: 'drinks',\n          level: 'pro',\n          url: 'https:\/\/mood.com\/product\/euphoric-nano-thc-syrup\/dose-80mg\/size-80ml\/?snowball=LCGUY2591&utm_source=vicers&utm_campaign=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/nano-syrup.webp?resize=300,300',\n          notes: [\n            'Highly customizable THC syrup to dial in your own drink strength'\n          ]\n        },\n        {\n          id: 'drink-cann-social-tonics',\n          name: 'Cann Social Tonics',\n          goal: 'relax',\n          method: 'drinks',\n          level: 'beginner',\n          url: 'https:\/\/track.revoffers.com\/aff_c?offer_id=208&aff_id=9106&url_id=7136&sub1=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/cann-tonics.webp?resize=300,300',\n          notes: [\n            'Low-dose social tonics for microdosed, bubbly hangs'\n          ]\n        },\n        {\n          id: 'flower-mood-super-lemon-haze',\n          name: 'Mood Super Lemon Haze',\n          goal: 'socialize',\n          method: 'smoking',\n          level: 'intermediate',\n          url: 'https:\/\/mood.com\/product\/super-lemon-haze-thca-flower\/size-3-5g\/?snowball=LCGUY2591&utm_source=vicers&utm_campaign=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/super-lemon-haze.webp?resize=300,300',\n          notes: [\n            'Zippy sativa-leaning flower for daytime creativity and conversation'\n          ]\n        },\n        {\n          id: 'flower-mood-wonder-bread',\n          name: 'Mood Wonder Bread',\n          goal: 'socialize',\n          method: 'smoking',\n          level: 'pro',\n          url: 'https:\/\/mood.com\/product\/wonder-bread-thca-flower\/size-3-5g\/?snowball=LCGUY2591&utm_source=vicers&utm_campaign=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/wonder-bread.webp?resize=300,300',\n          notes: [\n            'Loud, potent THCa strain built for seasoned smokers'\n          ]\n        },\n        {\n          id: 'flower-secret-nature-cherry-kush',\n          name: 'Secret Nature Cherry Kush',\n          goal: 'relax',\n          method: 'smoking',\n          level: 'intermediate',\n          url: 'https:\/\/secretnaturecbd.com\/products\/cherry-cough-thca-flower?snowball=LCGUY2591&utm_source=vicers&utm_campaign=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/cherry-kush.webp?resize=300,300',\n          notes: [\n            'Cherry-forward hybrid for chilled-out but functional evenings'\n          ]\n        },\n        {\n          id: 'flower-mood-oreoz',\n          name: 'Mood Oreoz',\n          goal: 'melt',\n          method: 'smoking',\n          level: 'intermediate',\n          url: 'https:\/\/mood.com\/product\/oreoz-thca-flower\/size-3-5g\/?snowball=LCGUY2591&utm_source=vicers&utm_campaign=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/oreoz.webp?resize=300,300',\n          notes: [\n            'Dessert-y indica-leaning strain for evening couch sessions'\n          ]\n        },\n        {\n          id: 'flower-mood-cereal-milk',\n          name: 'Mood Cereal Milk',\n          goal: 'relax',\n          method: 'smoking',\n          level: 'any',\n          url: 'https:\/\/mood.com\/product\/cereal-milk-thca-flower\/size-3-5g\/?snowball=LCGUY2591&utm_source=vicers&utm_campaign=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/cereal-milk.webp?resize=300,300',\n          notes: [\n            'Balanced hybrid flower that works for both day and night'\n          ]\n        },\n        {\n          id: 'flower-mood-cupids-kush',\n          name: 'Mood Cupid\u2019s Kush',\n          goal: 'melt',\n          method: 'smoking',\n          level: 'intermediate,beginner',\n          url: 'https:\/\/mood.com\/product\/cupids-kush-thca-flower\/size-3-5g\/?snowball=LCGUY2591&utm_source=vicers&utm_campaign=quiz',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/09\/cupids-kush.webp?resize=300,300',\n          notes: [\n            'Playful fruity THCa strain good for date night'\n          ]\n        },\n        {\n          id: 'flower-diet-smoke-gelato-33',\n          name: 'Mood THCa Moonrocks',\n          goal: 'melt',\n          method: 'smoking',\n          level: 'pro',\n          url: 'https:\/\/mood.com\/product\/thca-moonrocks',\n          image: 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/12\/brand-personality.webp',\n          notes: [\n            'Strong THCa moonrocks rolled in keif'\n          ]\n        }\n      ];\n\n\n      function showStep(step) {\n        currentStep = step;\n        steps.forEach(function (el) {\n          var s = parseInt(el.getAttribute('data-step'), 10);\n          el.classList.toggle('is-active', s === step);\n        });\n\n        var effectiveStep = Math.min(currentStep, TOTAL_STEPS);\n        if (progressBar) {\n          var pct = ((effectiveStep - 1) \/ TOTAL_STEPS) * 100;\n          progressBar.style.width = pct + '%';\n        }\n        if (stepLabel) {\n          stepLabel.textContent = 'Step ' + effectiveStep + ' of ' + TOTAL_STEPS;\n        }\n\n        if (backBtn) {\n          backBtn.style.visibility = step > 1 && step <= TOTAL_STEPS ? 'visible' : 'hidden';\n        }\n      }\n\n      function goNextStep() {\n        if (currentStep < 6) showStep(currentStep + 1);\n      }\n\n      function goPrevStep() {\n        if (currentStep > 1 && currentStep <= 6) showStep(currentStep - 1);\n      }\n\n      function matchesLevel(prodLevel, userLevel) {\n        if (!prodLevel || prodLevel === 'any' || !userLevel) return true;\n        var parts = String(prodLevel).split(',').map(function (p) { return p.trim(); });\n        return parts.indexOf(userLevel) !== -1;\n      }\n\n      function findBestProduct() {\n        var goal = state.experienceGoal;\n        var method = state.method;\n        var level = state.experienceLevel;\n        if (!goal) return null;\n\n        function filterBy(fn) { return products.filter(fn); }\n\n        var candidates = filterBy(function (p) {\n          return p.goal === goal &#038;&#038; p.method === method &#038;&#038; matchesLevel(p.level, level);\n        });\n\n        if (!candidates.length &#038;&#038; method) {\n          candidates = filterBy(function (p) {\n            return p.goal === goal &#038;&#038; p.method === method;\n          });\n        }\n\n        if (!candidates.length) {\n          candidates = filterBy(function (p) { return p.goal === goal; });\n        }\n\n        if (!candidates.length) {\n          candidates = products.slice();\n        }\n\n        return candidates[0] || null;\n      }\n\n      function renderResult() {\n        var product = findBestProduct();\n\n        if (!product) {\n          resultTitle.textContent = 'We couldn\u2019t find a perfect match';\n          resultMeta.textContent = 'Something went off with the data. Try refreshing the page and taking the quiz again.';\n          resultList.innerHTML = '';\n          resultLink.href = '#';\n          resultPill.textContent = 'Personalized match';\n\n          \/\/ Hide image if something goes wrong\n          if (resultImageWrap) {\n            resultImageWrap.style.display = 'none';\n          }\n\n          return;\n        }\n\n        var vibeLabelMap = {\n          relax: 'Relax',\n          socialize: 'Social',\n          sleep: 'Sleep',\n          melt: 'Couch-lock'\n        };\n        var methodLabelMap = {\n          gummies: 'Gummies',\n          drinks: 'Drinks',\n          smoking: 'Smoking',\n          vaping: 'Vape'\n        };\n\n        var vibeLabel = vibeLabelMap[product.goal] || 'Any vibe';\n        var methodLabel = methodLabelMap[product.method] || 'Any method';\n\n        resultPill.textContent = vibeLabel + ' \u2022 ' + methodLabel;\n        resultTitle.textContent = product.name;\n        resultMeta.textContent = 'Based on your answers, this is the best fit for how you want to feel tonight.';\n\n        \/\/ NEW: set result image from product.image\n        if (resultImage &#038;&#038; resultImageWrap) {\n          var fallbackImage = 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/05\/d9-extra-strength-bluerazz-20ct__40613.webp?resize=300,300';\n\n          resultImage.src = product.image || fallbackImage;\n          resultImage.alt = product.name || 'Product image';\n          resultImageWrap.style.display = 'flex';\n        }\n\n        resultList.innerHTML = '';\n        (product.notes || []).forEach(function (note) {\n          var li = document.createElement('li');\n          li.textContent = note;\n          resultList.appendChild(li);\n        });\n\n        resultLink.href = product.url || '#';\n      }\n\n      function handleAgeGate(value) {\n        state.ageGate = value;\n\n        if (value === 'no') {\n          var step1 = root.querySelector('.canna-quiz-step[data-step=\"1\"]');\n          if (step1) {\n            step1.innerHTML =\n              '<div class=\"canna-quiz-question\">Sorry, this quiz is for 21+ only.<\/div>' +\n              '<p class=\"canna-quiz-subtitle\">We can\u2019t recommend products to anyone under 21. Please come back when you\u2019re of legal age in your area.<\/p>' +\n              '<p class=\"canna-quiz-legal\">If you\\'re 21+ and reached this screen by mistake, refresh the page to retake the quiz.<\/p>';\n          }\n          if (progressBar) progressBar.style.width = '100%';\n          if (stepLabel) stepLabel.textContent = 'Age restricted';\n          if (backBtn) backBtn.style.visibility = 'hidden';\n          return;\n        }\n\n        goNextStep();\n      }\n\n      function handleOptionClick(btn) {\n        var questionKey = btn.getAttribute('data-question');\n        var value = btn.getAttribute('data-value');\n        if (!questionKey || !value) return;\n\n        var groupButtons = root.querySelectorAll(\n          '.canna-quiz-option-btn[data-question=\"' + questionKey + '\"]'\n        );\n        groupButtons.forEach(function (b) { b.classList.remove('is-selected'); });\n        btn.classList.add('is-selected');\n\n        state[questionKey] = value;\n\n        if (questionKey === 'ageGate') {\n          handleAgeGate(value);\n        } else {\n          goNextStep();\n        }\n      }\n\n      function validateEmail(val) {\n        if (!val) return false;\n        var v = String(val).trim();\n        if (!v) return false;\n        var re = \/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$\/;\n        return re.test(v);\n      }\n\n      function handleEmailSubmit(e) {\n        if (e && e.preventDefault) e.preventDefault();\n        if (!emailInput || !emailError) return;\n\n        var val = emailInput.value;\n        if (!validateEmail(val)) {\n          emailError.textContent = 'Please enter a valid email to see your result.';\n          emailError.style.display = 'block';\n          return false;\n        }\n\n        emailError.style.display = 'none';\n        state.email = String(val).trim();\n\n        \/\/ TODO: hook state into ESP\/CRM here\n\n        renderResult();\n        showStep(6);\n        return false;\n      }\n\n      function setViewMode(mode) {\n        if (!quizMain || !browseView) return;\n\n        if (mode === 'browse') {\n          quizMain.style.display = 'none';\n          browseView.style.display = 'block';\n          if (footer) footer.style.display = 'none';\n        } else {\n          quizMain.style.display = 'block';\n          browseView.style.display = 'none';\n          if (footer) footer.style.display = 'flex';\n        }\n      }\n\n      function updateBrowseFilterButtons() {\n        browseGoalButtons.forEach(function (btn) {\n          var val = btn.getAttribute('data-browse-goal');\n          btn.classList.toggle('is-active', val === browseState.goal);\n        });\n        browseMethodButtons.forEach(function (btn) {\n          var val = btn.getAttribute('data-browse-method');\n          btn.classList.toggle('is-active', val === browseState.method);\n        });\n      }\n\n      function filterBrowseProducts() {\n        var goal = browseState.goal;\n        var method = browseState.method;\n        return products.filter(function (p) {\n          if (goal !== 'all' && p.goal !== goal) return false;\n          if (method !== 'all' && p.method !== method) return false;\n          return true;\n        });\n      }\n\n      function renderBrowseGrid() {\n        if (!browseGrid) return;\n        browseGrid.innerHTML = '';\n\n        var list = filterBrowseProducts();\n        if (!list.length) {\n          var empty = document.createElement('p');\n          empty.className = 'canna-quiz-subtitle';\n          empty.textContent = 'No products match these filters. Try changing your vibe or method.';\n          browseGrid.appendChild(empty);\n          return;\n        }\n\n        var vibeLabelMap = {\n          relax: 'Relax',\n          socialize: 'Social',\n          sleep: 'Sleep',\n          melt: 'Melt'\n        };\n        var methodLabelMap = {\n          gummies: 'Gummies',\n          drinks: 'Drinks',\n          smoking: 'Smoking',\n          vaping: 'Vape'\n        };\n\n        list.forEach(function (product) {\n          var card = document.createElement('article');\n          card.className = 'canna-browse-card';\n\n          var imgWrap = document.createElement('div');\n          imgWrap.className = 'canna-browse-image-wrap';\n\n          var img = document.createElement('img');\n          img.className = 'canna-browse-image';\n          img.src = product.image || 'https:\/\/www.vice.com\/wp-content\/uploads\/sites\/2\/2025\/05\/d9-extra-strength-bluerazz-20ct__40613.webp?resize=300,300';\n          img.alt = product.name || 'Product image';\n          img.loading = 'lazy';\n\n          imgWrap.appendChild(img);\n\n          var metaRow = document.createElement('div');\n          metaRow.className = 'canna-browse-meta-row';\n\n          var vibePill = document.createElement('span');\n          vibePill.className = 'canna-browse-meta-pill';\n          vibePill.textContent = vibeLabelMap[product.goal] || 'Any vibe';\n\n          var methodPill = document.createElement('span');\n          methodPill.className = 'canna-browse-meta-pill';\n          methodPill.textContent = methodLabelMap[product.method] || 'Any method';\n\n          metaRow.appendChild(vibePill);\n          metaRow.appendChild(methodPill);\n\n          var titleEl = document.createElement('div');\n          titleEl.className = 'canna-browse-card-title';\n          titleEl.textContent = product.name;\n\n          var noteEl = document.createElement('div');\n          noteEl.className = 'canna-browse-card-note';\n          noteEl.textContent = (product.notes && product.notes[0]) || '';\n\n          var ctaWrap = document.createElement('div');\n          ctaWrap.className = 'canna-browse-card-cta';\n\n          var cta = document.createElement('a');\n          cta.href = product.url || '#';\n          cta.target = '_blank';\n          cta.rel = 'nofollow sponsored noopener';\n          cta.className = 'canna-quiz-primary-btn';\n          cta.textContent = 'View offer';\n          var arrow = document.createElement('span');\n          arrow.setAttribute('aria-hidden', 'true');\n          arrow.textContent = '\u2192';\n          cta.appendChild(arrow);\n\n          ctaWrap.appendChild(cta);\n\n          card.appendChild(imgWrap);\n          card.appendChild(metaRow);\n          card.appendChild(titleEl);\n          card.appendChild(noteEl);\n          card.appendChild(ctaWrap);\n\n          browseGrid.appendChild(card);\n        });\n      }\n\n      function openBrowseView() {\n        browseState.goal = state.experienceGoal || 'all';\n        browseState.method = state.method || 'all';\n        updateBrowseFilterButtons();\n        renderBrowseGrid();\n        setViewMode('browse');\n      }\n\n      function closeBrowseViewToResult() {\n        setViewMode('quiz');\n        showStep(6);\n      }\n\n      \/\/ === EVENT WIRING ===\n\n      \/\/ 1) Clicks inside quiz + browse\n      root.addEventListener('click', function (e) {\n        var optionBtn = e.target.closest('.canna-quiz-option-btn');\n        if (optionBtn && root.contains(optionBtn)) {\n          handleOptionClick(optionBtn);\n          return;\n        }\n\n        var goalBtn = e.target.closest('[data-browse-goal]');\n        if (goalBtn && root.contains(goalBtn)) {\n          browseState.goal = goalBtn.getAttribute('data-browse-goal') || 'all';\n          updateBrowseFilterButtons();\n          renderBrowseGrid();\n          return;\n        }\n\n        var methodBtn = e.target.closest('[data-browse-method]');\n        if (methodBtn && root.contains(methodBtn)) {\n          browseState.method = methodBtn.getAttribute('data-browse-method') || 'all';\n          updateBrowseFilterButtons();\n          renderBrowseGrid();\n          return;\n        }\n      });\n\n      \/\/ 2) Back button\n      if (backBtn) {\n        backBtn.addEventListener('click', function () {\n          goPrevStep();\n        });\n      }\n\n      \/\/ 3) Form submit (direct)\n      if (emailForm) {\n        emailForm.addEventListener('submit', handleEmailSubmit);\n      }\n\n      \/\/ 4) Button click (belt + suspenders)\n      if (seeResultBtn) {\n        seeResultBtn.addEventListener('click', function (e) {\n          handleEmailSubmit(e);\n        });\n      }\n\n      \/\/ 5) Delegated submit (extra backup)\n      root.addEventListener('submit', function (e) {\n        if (e.target && e.target.id === 'canna-quiz-email-form') {\n          handleEmailSubmit(e);\n        }\n      });\n\n      \/\/ 6) Explore \/ browse view\n      if (exploreBtn) {\n        exploreBtn.addEventListener('click', function () {\n          openBrowseView();\n        });\n      }\n\n      if (browseBackBtn) {\n        browseBackBtn.addEventListener('click', function () {\n          closeBrowseViewToResult();\n        });\n      }\n\n      showStep(1);\n      setViewMode('quiz');\n    })();\n  <\/script>\n<\/div>\n\n\n\n\n<p class=\"#canna-quiz-root {       font-family: system-ui, -apple-system, BlinkMacSystemFont, &quot;Segoe UI&quot;, sans-serif;       display: flex;       justify-content: center;       padding: 24px 16px;       box-sizing: border-box;     }      .canna-quiz-wrapper {       width: 100%;       max-width: 520px;       background: #050508;       color: #f9fafb;       border-radius: 20px;       box-shadow: 0 18px 40px rgba(0, 0, 0, 0.35);       padding: 28px 22px 22px;       box-sizing: border-box;       position: relative;       overflow: hidden;     }      @media (min-width: 640px) {       .canna-quiz-wrapper {         padding: 32px 28px 26px;       }     }      .canna-quiz-header {       display: flex;       flex-direction: column;       gap: 6px;       margin-bottom: 18px;     }      .canna-quiz-brand {       display: flex;       justify-content: flex-start;       margin-bottom: 4px;     }      .canna-quiz-brand img {       height: 22px;       width: auto;       display: block;     }      .canna-quiz-eyebrow {       font-size: 12px;       text-transform: uppercase;       letter-spacing: 0.12em;       color: #9ca3af;     }      .canna-quiz-title {       font-size: 22px;       line-height: 1.2;       font-weight: 650;     }      .canna-quiz-subtitle {       font-size: 14px;       color: #9ca3af;     }      .canna-quiz-progress {       position: relative;       width: 100%;       height: 6px;       border-radius: 999px;       background: #111827;       overflow: hidden;       margin: 14px 0 18px;     }      .canna-quiz-progress-bar {       position: absolute;       inset: 0;       width: 0;       background: linear-gradient(90deg, #22c55e, #a855f7);       transition: width 0.25s ease-out;     }      .canna-quiz-step-label {       font-size: 13px;       color: #9ca3af;       margin-bottom: 6px;     }      .canna-quiz-step {       display: none;       animation: cq-fade-in 0.2s ease-out;     }      .canna-quiz-step.is-active {       display: block;     }      @keyframes cq-fade-in {       from { opacity: 0; transform: translateY(4px); }       to { opacity: 1; transform: translateY(0); }     }      .canna-quiz-question {       font-size: 17px;       font-weight: 600;       margin-bottom: 14px;     }      .canna-quiz-options {       display: grid;       grid-template-columns: 1fr;       gap: 10px;       margin-bottom: 10px;     }      @media (min-width: 480px) {       .canna-quiz-options.cq-grid-2 {         grid-template-columns: repeat(2, minmax(0, 1fr));       }     }      .canna-quiz-option-btn {       border-radius: 999px;       border: 1px solid #1f2937;       background: #020617;       color: #e5e7eb;       padding: 11px 16px;       font-size: 15px;       text-align: left;       cursor: pointer;       display: flex;       align-items: center;       justify-content: space-between;       gap: 10px;       transition: background 0.15s ease-out, border-color 0.15s ease-out, transform 0.08s ease-out;     }      .canna-quiz-option-btn span.cq-label-main {       font-weight: 500;     }      .canna-quiz-option-btn span.cq-label-sub {       display: block;       font-size: 13px;       color: #9ca3af;       margin-top: 2px;     }      .canna-quiz-option-btn:hover {       background: #020617;       border-color: #4b5563;       transform: translateY(-1px);     }      .canna-quiz-option-btn:active {       transform: translateY(0);     }      .canna-quiz-option-btn.is-selected {       border-color: #22c55e;       background: radial-gradient(circle at top left, rgba(34,197,94,0.2), #020617);     }      .canna-quiz-footer {       display: flex;       align-items: center;       justify-content: space-between;       margin-top: 14px;       font-size: 13px;       color: #6b7280;     }      .canna-quiz-back-btn {       background: none;       border: none;       color: #9ca3af;       font-size: 13px;       padding: 4px 0;       cursor: pointer;       display: inline-flex;       align-items: center;       gap: 4px;     }      .canna-quiz-back-btn:hover {       color: #e5e7eb;     }      .canna-quiz-email-form {       display: flex;       flex-direction: column;       gap: 10px;       margin-top: 8px;     }      .canna-quiz-email-input {       width: 100%;       border-radius: 999px;       border: 1px solid #1f2937;       background: #020617;       color: #f9fafb;       padding: 10px 14px;       font-size: 15px;       box-sizing: border-box;     }      .canna-quiz-email-input::placeholder {       color: #6b7280;     }      .canna-quiz-primary-btn {       border-radius: 999px;       border: none;       background: linear-gradient(90deg, #22c55e, #a855f7);       color: #020617;       font-weight: 600;       padding: 11px 18px;       font-size: 15px;       cursor: pointer;       display: inline-flex;       align-items: center;       justify-content: center;       gap: 6px;       width: 100%;       box-sizing: border-box;     }      .canna-quiz-primary-btn:disabled {       opacity: 0.45;       cursor: default;     }      .canna-quiz-primary-btn:hover:not(:disabled) {       filter: brightness(1.05);     }      .canna-quiz-secondary-btn {       border-radius: 999px;       border: 1px solid #374151;       background: transparent;       color: #e5e7eb;       font-size: 14px;       padding: 9px 14px;       cursor: pointer;       display: inline-flex;       align-items: center;       justify-content: center;       gap: 6px;       width: 100%;       box-sizing: border-box;     }      .canna-quiz-secondary-btn:hover {       background: rgba(15,23,42,0.85);     }      .canna-quiz-error {       font-size: 13px;       color: #f97373;       margin-top: -2px;     }      .canna-quiz-legal {       font-size: 12px;       color: #6b7280;       line-height: 1.4;       margin-top: 8px;     }      .canna-quiz-result-card {       border-radius: 16px;       border: 1px solid #1f2937;       background: radial-gradient(circle at top left, rgba(34,197,94,0.18), #020617);       padding: 16px 16px 14px;       margin-top: 8px;     }      \/* NEW: result image styles *\/     .canna-quiz-result-image-wrap {       width: 100%;       border-radius: 12px;       overflow: hidden;       background: #030712;       display: flex;       align-items: center;       justify-content: center;       margin-bottom: 10px;       min-height: 160px;     }      .canna-quiz-result-image {       max-width: 100%;       height: auto;       display: block;     }      .canna-quiz-result-pill {       font-size: 12px;       text-transform: uppercase;       letter-spacing: 0.16em;       color: #a7f3d0;       margin-bottom: 6px;     }      .canna-quiz-result-title {       font-size: 18px;       font-weight: 650;       margin-bottom: 6px;     }      .canna-quiz-result-meta {       font-size: 13px;       color: #d1d5db;       margin-bottom: 8px;     }      .canna-quiz-result-list {       list-style: none;       padding: 0;       margin: 0 0 8px;       font-size: 14px;       color: #e5e7eb;     }      .canna-quiz-result-list li {       display: flex;       gap: 6px;       align-items: flex-start;       margin-bottom: 4px;     }      .canna-quiz-result-list li::before {       content: &quot;\u2022&quot;;       color: #22c55e;       flex-shrink: 0;       margin-top: -1px;     }      .canna-quiz-result-cta-wrap {       display: flex;       flex-direction: column;       gap: 8px;       margin-top: 10px;     }      .canna-quiz-tagline {       font-size: 12px;       color: #9ca3af;       margin-top: 14px;       text-align: center;     }      .canna-quiz-tagline span {       color: #a855f7;     }      \/* === Browse View Styles === *\/     .canna-browse-view {       display: none;       animation: cq-fade-in 0.2s ease-out;     }      .canna-browse-header {       margin-bottom: 12px;     }      .canna-browse-title {       font-size: 18px;       font-weight: 650;       margin-bottom: 4px;     }      .canna-browse-subtitle {       font-size: 14px;       color: #9ca3af;     }      .canna-browse-filters {       display: flex;       flex-direction: column;       gap: 10px;       margin: 14px 0 12px;     }      @media (min-width: 540px) {       .canna-browse-filters {         flex-direction: row;         justify-content: space-between;         gap: 12px;       }     }      .canna-browse-filter-group {       flex: 1;     }      .canna-browse-filter-label {       font-size: 12px;       text-transform: uppercase;       letter-spacing: 0.12em;       color: #6b7280;       margin-bottom: 6px;     }      .canna-browse-filter-pills {       display: flex;       flex-wrap: wrap;       gap: 6px;     }      .canna-browse-pill-btn {       border-radius: 999px;       border: 1px solid #1f2937;       background: #020617;       color: #e5e7eb;       font-size: 13px;       padding: 5px 10px;       cursor: pointer;       display: inline-flex;       align-items: center;       gap: 4px;     }      .canna-browse-pill-btn.is-active {       border-color: #22c55e;       background: rgba(34,197,94,0.12);     }      .canna-browse-grid {       display: grid;       grid-template-columns: 1fr;       gap: 12px;       margin-top: 6px;     }      @media (min-width: 540px) {       .canna-browse-grid {         grid-template-columns: repeat(2, minmax(0, 1fr));       }     }      .canna-browse-card {       border-radius: 14px;       border: 1px solid #1f2937;       background: #020617;       padding: 10px 10px 12px;       display: flex;       flex-direction: column;       gap: 8px;     }      .canna-browse-image-wrap {       width: 100%;       border-radius: 12px;       overflow: hidden;       background: #030712;       display: flex;       align-items: center;       justify-content: center;       min-height: 140px;     }      .canna-browse-image {       max-width: 100%;       height: auto;       display: block;     }      .canna-browse-meta-row {       display: flex;       flex-wrap: wrap;       gap: 6px;       font-size: 12px;       color: #9ca3af;     }      .canna-browse-meta-pill {       border-radius: 999px;       border: 1px solid #374151;       padding: 3px 8px;     }      .canna-browse-card-title {       font-size: 15px;       font-weight: 600;     }      .canna-browse-card-note {       font-size: 13px;       color: #d1d5db;     }      .canna-browse-card-cta {       margin-top: 4px;     }      .canna-browse-back-row {       margin-top: 14px;       display: flex;       justify-content: flex-start;     }      .canna-browse-back-btn {       background: none;       border: none;       color: #9ca3af;       font-size: 13px;       cursor: pointer;       display: inline-flex;       align-items: center;       gap: 4px;       padding: 0;     }      .canna-browse-back-btn:hover {       color: #e5e7eb;     }\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Personalized recs Find your perfect vibe in 4 taps Answer a few quick questions to get a product picked for how you actually want to feel. Step 1 of 5 First things first \u2014 are you 21 or older? Yes, I\u2019m 21+ No This experience is designed only for adults 21+ where products are legal&#8230;.<\/p>\n","protected":false},"author":7,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_kad_blocks_custom_css":"","_kad_blocks_head_custom_js":"","_kad_blocks_body_custom_js":"","_kad_blocks_footer_custom_js":"","_kadence_starter_templates_imported_post":false,"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"footnotes":""},"class_list":["post-131","page","type-page","status-publish","hentry"],"parsely":{"version":"1.1.0","canonical_url":"https:\/\/grasslandco.com\/?page_id=131","smart_links":{"inbound":0,"outbound":0},"traffic_boost_suggestions_count":0,"meta":{"@context":"https:\/\/schema.org","@type":"WebPage","headline":"Personalized Budtender","url":"http:\/\/grasslandco.com\/?page_id=131","mainEntityOfPage":{"@type":"WebPage","@id":"http:\/\/grasslandco.com\/?page_id=131"},"thumbnailUrl":"","image":{"@type":"ImageObject","url":""},"articleSection":"Uncategorized","author":[{"@type":"Person","name":"bradsv"}],"creator":["bradsv"],"publisher":{"@type":"Organization","name":"Grassland Co","logo":""},"keywords":[],"dateCreated":"2025-12-05T22:49:13Z","datePublished":"2025-12-05T22:49:13Z","dateModified":"2025-12-05T22:53:48Z"},"rendered":"<script type=\"application\/ld+json\" class=\"wp-parsely-metadata\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@type\":\"WebPage\",\"headline\":\"Personalized Budtender\",\"url\":\"http:\\\/\\\/grasslandco.com\\\/?page_id=131\",\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"http:\\\/\\\/grasslandco.com\\\/?page_id=131\"},\"thumbnailUrl\":\"\",\"image\":{\"@type\":\"ImageObject\",\"url\":\"\"},\"articleSection\":\"Uncategorized\",\"author\":[{\"@type\":\"Person\",\"name\":\"bradsv\"}],\"creator\":[\"bradsv\"],\"publisher\":{\"@type\":\"Organization\",\"name\":\"Grassland Co\",\"logo\":\"\"},\"keywords\":[],\"dateCreated\":\"2025-12-05T22:49:13Z\",\"datePublished\":\"2025-12-05T22:49:13Z\",\"dateModified\":\"2025-12-05T22:53:48Z\"}<\/script>","tracker_url":"https:\/\/cdn.parsely.com\/keys\/grasslandco.com\/p.js"},"taxonomy_info":[],"featured_image_src_large":false,"author_info":{"display_name":"bradsv","author_link":"https:\/\/grasslandco.com\/?author=7"},"comment_info":0,"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/grasslandco.com\/index.php?rest_route=\/wp\/v2\/pages\/131","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/grasslandco.com\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/grasslandco.com\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/grasslandco.com\/index.php?rest_route=\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/grasslandco.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=131"}],"version-history":[{"count":4,"href":"https:\/\/grasslandco.com\/index.php?rest_route=\/wp\/v2\/pages\/131\/revisions"}],"predecessor-version":[{"id":135,"href":"https:\/\/grasslandco.com\/index.php?rest_route=\/wp\/v2\/pages\/131\/revisions\/135"}],"wp:attachment":[{"href":"https:\/\/grasslandco.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=131"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}