{"id":1217,"date":"2026-07-19T23:31:07","date_gmt":"2026-07-19T19:31:07","guid":{"rendered":"https:\/\/trulynolen.ge\/risk-calculator\/"},"modified":"2026-09-08T22:25:34","modified_gmt":"2026-09-08T18:25:34","slug":"risk-calculator","status":"publish","type":"page","link":"https:\/\/trulynolen.ge\/en\/risk-calculator\/","title":{"rendered":"Risk Calculator"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"1217\" class=\"elementor elementor-1217 elementor-21\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8a0000ac e-con-full e-flex e-con e-parent\" data-id=\"8a0000ac\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8a0000ab elementor-widget elementor-widget-html\" data-id=\"8a0000ab\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<section id=\"nxpbd-home-scorecard\" class=\"nxpbd-scorecard-wrap\">\n        <div class=\"nxpbd-scorecard\">\n          <div class=\"nxpbd-scorecard__hero\">\n            <div class=\"nxpbd-hero-card\">\n              <span class=\"nxpbd-eyebrow\">Home Assessment \u00b7 Georgia<\/span>\n              <h1>See your home\u2019s <span>pest risk<\/span> in minutes.<\/h1>\n              <p class=\"nxpbd-lead\">\n                Answer simple property questions to calculate a live risk score for pests, termites, and rodents.\n                The final result explains why the score is Low, Medium, or High.\n              <\/p>\n              <div class=\"nxpbd-hero-actions\">\n                <a class=\"nxpbd-btn nxpbd-btn--primary\" href=\"\/en\/contact\/\">Get Free Inspection<\/a>\n                <a class=\"nxpbd-btn nxpbd-btn--secondary\" href=\"tel:+995577738833\">Call 577 73 88 33<\/a>\n              <\/div>\n            <\/div>\n\n            <aside class=\"nxpbd-risk-panel\" aria-live=\"polite\">\n              <div class=\"nxpbd-risk-title\">\n                <div>\n                  <strong>Risk Indicator<\/strong>\n                  <span>Pest Control<\/span>\n                <\/div>\n                <span>0\/13<\/span>\n              <\/div>\n\n              <div class=\"nxpbd-meter\" style=\"--p:0; --risk-color:var(--nxpbd-green);\">\n                <div class=\"nxpbd-meter__inner\">\n                  <span class=\"nxpbd-meter__score\">0<\/span>\n                  <span class=\"nxpbd-meter__label\">Low<\/span>\n                <\/div>\n              <\/div>\n\n              <div class=\"nxpbd-risk-scale\">\n                <div class=\"nxpbd-scale-row\">\n                  <span>0<\/span>\n                  <span>Low<\/span>\n                  <span>Medium<\/span>\n                  <span>High<\/span>\n                  <span>100<\/span>\n                <\/div>\n                <div class=\"nxpbd-scale-track\" aria-hidden=\"true\"><span><\/span><span><\/span><span><\/span><\/div>\n              <\/div>\n\n              <div class=\"nxpbd-progress\" title=\"0% complete\">\n                <span style=\"--done:0%\"><\/span>\n              <\/div>\n\n              <p class=\"nxpbd-meta\">Your answers suggest lower risk right now. Keep monitoring entry points, moisture, and pest activity.<\/p>\n            <\/aside>\n          <\/div>\n\n          <div class=\"nxpbd-layout\">\n            <nav class=\"nxpbd-tabs\" aria-label=\"Scorecard categories\">\n              \n          <button class=\"nxpbd-tab is-active\" type=\"button\" data-nxpbd-tab=\"pest\">\n            <strong>Pest Control<\/strong>\n            <span>0\/13 answered \u00b7 0\/100<\/span>\n          <\/button>\n        \n          <button class=\"nxpbd-tab\" type=\"button\" data-nxpbd-tab=\"termite\">\n            <strong>Termite Control<\/strong>\n            <span>0\/12 answered \u00b7 0\/100<\/span>\n          <\/button>\n        \n          <button class=\"nxpbd-tab\" type=\"button\" data-nxpbd-tab=\"rodent\">\n            <strong>Rodent Control<\/strong>\n            <span>0\/9 answered \u00b7 0\/100<\/span>\n          <\/button>\n        \n            <\/nav>\n\n            <main class=\"nxpbd-content\">\n              <header class=\"nxpbd-category-head\">\n                <div>\n                  <span class=\"nxpbd-eyebrow\">Whole-home pest risk<\/span>\n                  <h3>Pest Control<\/h3>\n                  <p>Check common entry points, pest sightings, food sources, moisture, cleaning habits, and property layout.<\/p>\n                <\/div>\n                <div class=\"nxpbd-mini-score\">\n                  <strong>0<\/strong>\n                  <span>Low Risk<\/span>\n                <\/div>\n              <\/header>\n\n              \n        <article class=\"nxpbd-question-card\">\n          <div class=\"nxpbd-question-top\">\n            <span class=\"nxpbd-question-number\">1<\/span>\n            <div>\n              <h4 class=\"nxpbd-question-title\">Can you see daylight around the sides, top, or bottom of exterior doors?<\/h4>\n              \n            <\/div>\n          <\/div>\n\n          <div class=\"nxpbd-options\">\n            \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-door-light\" value=\"yes\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"door-light\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Yes<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+8<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-door-light\" value=\"no\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"door-light\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>No<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">0<\/span>\n        <\/label>\n      \n          <\/div>\n\n          \n        <\/article>\n      \n        <article class=\"nxpbd-question-card\">\n          <div class=\"nxpbd-question-top\">\n            <span class=\"nxpbd-question-number\">2<\/span>\n            <div>\n              <h4 class=\"nxpbd-question-title\">When did you last caulk or seal around exterior doors?<\/h4>\n              \n            <\/div>\n          <\/div>\n\n          <div class=\"nxpbd-options\">\n            \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-caulk-doors\" value=\"year\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"caulk-doors\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Within the last year<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">0<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-caulk-doors\" value=\"three\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"caulk-doors\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Within the last 3 years<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+4<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-caulk-doors\" value=\"old\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"caulk-doors\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>More than 3 years ago<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+8<\/span>\n        <\/label>\n      \n          <\/div>\n\n          \n        <\/article>\n      \n        <article class=\"nxpbd-question-card\">\n          <div class=\"nxpbd-question-top\">\n            <span class=\"nxpbd-question-number\">3<\/span>\n            <div>\n              <h4 class=\"nxpbd-question-title\">Which pests have you seen inside during the last month?<\/h4>\n              <p class=\"nxpbd-question-help\">Select all that apply. Choosing \u201cNone\u201d clears the other selections.<\/p>\n            <\/div>\n          <\/div>\n\n          <div class=\"nxpbd-options nxpbd-options--wide\">\n            \n        <label class=\"nxpbd-option\">\n          <input type=\"checkbox\" name=\"nxpbd-pest-pests-seen\" value=\"ants\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"pests-seen\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Ants<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+3<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"checkbox\" name=\"nxpbd-pest-pests-seen\" value=\"bed-bugs\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"pests-seen\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Bed Bugs<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+10<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"checkbox\" name=\"nxpbd-pest-pests-seen\" value=\"bees-wasps\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"pests-seen\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Bees or Wasps<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+5<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"checkbox\" name=\"nxpbd-pest-pests-seen\" value=\"crickets\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"pests-seen\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Crickets<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+3<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"checkbox\" name=\"nxpbd-pest-pests-seen\" value=\"earwigs\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"pests-seen\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Earwigs<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+3<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"checkbox\" name=\"nxpbd-pest-pests-seen\" value=\"fleas\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"pests-seen\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Fleas<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+6<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"checkbox\" name=\"nxpbd-pest-pests-seen\" value=\"roaches\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"pests-seen\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Cockroaches<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+10<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"checkbox\" name=\"nxpbd-pest-pests-seen\" value=\"rodents\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"pests-seen\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Rodents<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+10<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"checkbox\" name=\"nxpbd-pest-pests-seen\" value=\"silverfish\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"pests-seen\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Silverfish<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+3<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"checkbox\" name=\"nxpbd-pest-pests-seen\" value=\"spiders\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"pests-seen\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Spiders<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+3<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"checkbox\" name=\"nxpbd-pest-pests-seen\" value=\"termites\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"pests-seen\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Termites<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+12<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"checkbox\" name=\"nxpbd-pest-pests-seen\" value=\"ticks\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"pests-seen\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Ticks<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+6<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"checkbox\" name=\"nxpbd-pest-pests-seen\" value=\"none\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"pests-seen\" data-nxpbd-exclusive=\"1\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>None<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">0<\/span>\n        <\/label>\n      \n          <\/div>\n\n          \n        <\/article>\n      \n        <article class=\"nxpbd-question-card\">\n          <div class=\"nxpbd-question-top\">\n            <span class=\"nxpbd-question-number\">4<\/span>\n            <div>\n              <h4 class=\"nxpbd-question-title\">How old is your home?<\/h4>\n              \n            <\/div>\n          <\/div>\n\n          <div class=\"nxpbd-options\">\n            \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-home-age\" value=\"new\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"home-age\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Less than 1 year<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+5<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-home-age\" value=\"one-five\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"home-age\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>1\u20135 years<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+1<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-home-age\" value=\"six-ten\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"home-age\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>6\u201310 years<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+4<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-home-age\" value=\"ten-plus\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"home-age\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>10+ years<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+8<\/span>\n        <\/label>\n      \n          <\/div>\n\n          \n        <\/article>\n      \n        <article class=\"nxpbd-question-card\">\n          <div class=\"nxpbd-question-top\">\n            <span class=\"nxpbd-question-number\">5<\/span>\n            <div>\n              <h4 class=\"nxpbd-question-title\">What is your home\u2019s main structure?<\/h4>\n              \n            <\/div>\n          <\/div>\n\n          <div class=\"nxpbd-options\">\n            \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-structure\" value=\"timber-stucco\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"structure\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Timber, weatherboard, or stucco<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+7<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-structure\" value=\"brick-block\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"structure\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Brick, block, or masonry<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+3<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-structure\" value=\"solid-plaster\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"structure\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Solid plaster or concrete<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+2<\/span>\n        <\/label>\n      \n          <\/div>\n\n          \n        <\/article>\n      \n        <article class=\"nxpbd-question-card\">\n          <div class=\"nxpbd-question-top\">\n            <span class=\"nxpbd-question-number\">6<\/span>\n            <div>\n              <h4 class=\"nxpbd-question-title\">Are trees within 1 metre of the home, or do branches hang over the roof?<\/h4>\n              \n            <\/div>\n          <\/div>\n\n          <div class=\"nxpbd-options\">\n            \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-trees\" value=\"yes\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"trees\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Yes<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+7<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-trees\" value=\"no\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"trees\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>No<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">0<\/span>\n        <\/label>\n      \n          <\/div>\n\n          \n        <\/article>\n      \n        <article class=\"nxpbd-question-card\">\n          <div class=\"nxpbd-question-top\">\n            <span class=\"nxpbd-question-number\">7<\/span>\n            <div>\n              <h4 class=\"nxpbd-question-title\">Do you have flower or plant beds directly along the home perimeter?<\/h4>\n              \n            <\/div>\n          <\/div>\n\n          <div class=\"nxpbd-options\">\n            \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-garden-beds\" value=\"yes\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"garden-beds\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Yes<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+5<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-garden-beds\" value=\"no\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"garden-beds\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>No<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">0<\/span>\n        <\/label>\n      \n          <\/div>\n\n          \n        <\/article>\n      \n        <article class=\"nxpbd-question-card\">\n          <div class=\"nxpbd-question-top\">\n            <span class=\"nxpbd-question-number\">8<\/span>\n            <div>\n              <h4 class=\"nxpbd-question-title\">Do you have dripping outdoor taps or plumbing leaks?<\/h4>\n              \n            <\/div>\n          <\/div>\n\n          <div class=\"nxpbd-options\">\n            \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-dripping-taps\" value=\"yes\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"dripping-taps\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Yes<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+7<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-dripping-taps\" value=\"no\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"dripping-taps\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>No<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">0<\/span>\n        <\/label>\n      \n          <\/div>\n\n          \n        <\/article>\n      \n        <article class=\"nxpbd-question-card\">\n          <div class=\"nxpbd-question-top\">\n            <span class=\"nxpbd-question-number\">9<\/span>\n            <div>\n              <h4 class=\"nxpbd-question-title\">If you have pets, how long is food left out?<\/h4>\n              \n            <\/div>\n          <\/div>\n\n          <div class=\"nxpbd-options\">\n            \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-pet-food\" value=\"under-hour\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"pet-food\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Less than 1 hour<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">0<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-pet-food\" value=\"one-three\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"pet-food\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>1\u20133 hours<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+4<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-pet-food\" value=\"all-day\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"pet-food\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>All day<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+8<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-pet-food\" value=\"na\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"pet-food\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>N\/A, no pets<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">0<\/span>\n        <\/label>\n      \n          <\/div>\n\n          \n        <\/article>\n      \n        <article class=\"nxpbd-question-card\">\n          <div class=\"nxpbd-question-top\">\n            <span class=\"nxpbd-question-number\">10<\/span>\n            <div>\n              <h4 class=\"nxpbd-question-title\">What type of dwelling do you live in?<\/h4>\n              \n            <\/div>\n          <\/div>\n\n          <div class=\"nxpbd-options\">\n            \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-dwelling\" value=\"detached\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"dwelling\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Single detached home<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">0<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-dwelling\" value=\"townhouse\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"dwelling\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Connected townhouse<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+4<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-dwelling\" value=\"apartment\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"dwelling\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Unit, apartment, or shared building<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+7<\/span>\n        <\/label>\n      \n          <\/div>\n\n          \n        <\/article>\n      \n        <article class=\"nxpbd-question-card\">\n          <div class=\"nxpbd-question-top\">\n            <span class=\"nxpbd-question-number\">11<\/span>\n            <div>\n              <h4 class=\"nxpbd-question-title\">Do you keep horses, chickens, or other livestock on the property?<\/h4>\n              \n            <\/div>\n          <\/div>\n\n          <div class=\"nxpbd-options\">\n            \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-livestock\" value=\"yes\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"livestock\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Yes<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+6<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-livestock\" value=\"no\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"livestock\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>No<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">0<\/span>\n        <\/label>\n      \n          <\/div>\n\n          \n        <\/article>\n      \n        <article class=\"nxpbd-question-card\">\n          <div class=\"nxpbd-question-top\">\n            <span class=\"nxpbd-question-number\">12<\/span>\n            <div>\n              <h4 class=\"nxpbd-question-title\">How often do you vacuum floors?<\/h4>\n              \n            <\/div>\n          <\/div>\n\n          <div class=\"nxpbd-options nxpbd-options--wide\">\n            \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-vacuum\" value=\"daily\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"vacuum\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Daily<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">0<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-vacuum\" value=\"twice\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"vacuum\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Twice a week<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+2<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-vacuum\" value=\"weekly\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"vacuum\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Weekly<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+4<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-vacuum\" value=\"fortnightly\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"vacuum\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Every other week<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+7<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-vacuum\" value=\"monthly\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"vacuum\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Monthly<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+9<\/span>\n        <\/label>\n      \n          <\/div>\n\n          \n        <\/article>\n      \n        <article class=\"nxpbd-question-card\">\n          <div class=\"nxpbd-question-top\">\n            <span class=\"nxpbd-question-number\">13<\/span>\n            <div>\n              <h4 class=\"nxpbd-question-title\">How do you usually store rubbish before collection?<\/h4>\n              \n            <\/div>\n          <\/div>\n\n          <div class=\"nxpbd-options\">\n            \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-garbage\" value=\"garage\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"garbage\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Bin kept inside garage<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+7<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-garbage\" value=\"outside\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"garbage\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Bin kept outside<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+3<\/span>\n        <\/label>\n      \n        <label class=\"nxpbd-option\">\n          <input type=\"radio\" name=\"nxpbd-pest-garbage\" value=\"communal\" data-nxpbd-category=\"pest\" data-nxpbd-question=\"garbage\">\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>Shared or property dumpster<\/strong>\n            \n          <\/span>\n          <span class=\"nxpbd-points\">+2<\/span>\n        <\/label>\n      \n          <\/div>\n\n          \n        <\/article>\n      \n\n              \n        <section class=\"nxpbd-summary-panel\">\n          <div class=\"nxpbd-summary-head\">\n            <div>\n              <h3>Pest Control Scorecard Result<\/h3>\n              <p>Your answers suggest lower risk right now. Keep monitoring entry points, moisture, and pest activity.<\/p>\n            <\/div>\n            <a class=\"nxpbd-btn nxpbd-btn--primary\" href=\"tel:+995577738833\">\n              Call 577 73 88 33\n            <\/a>\n          <\/div>\n\n          <div class=\"nxpbd-score-explain\">\n            <div class=\"nxpbd-score-formula\">\n              <span>Score Calculation<\/span>\n              <strong>0\/0 selected risk points = 0\/100 Low Risk<\/strong>\n              <p>No score explanation is available yet because no questions have been answered.<\/p>\n            <\/div>\n          <\/div>\n\n          <h4 class=\"nxpbd-summary-title\">Risk Breakdown<\/h4>\n          <div class=\"nxpbd-empty\">Answer the questions above to generate a risk breakdown.<\/div>\n\n          <h4 class=\"nxpbd-summary-title\">Top Reasons For This Score<\/h4>\n          <div class=\"nxpbd-empty\">No major score drivers yet. Answer more questions to see what is affecting the score.<\/div>\n\n          \n\n          <div class=\"nxpbd-footer-actions\">\n            <a class=\"nxpbd-btn nxpbd-btn--secondary\" href=\"\/en\/contact\/\">\n              Book Free Inspection\n            <\/a>\n            <a class=\"nxpbd-btn nxpbd-btn--ghost\" href=\"mailto:info@trulynolen.ge?subject=Home%20Scorecard%20Result&amp;body=Truly%20Nolen%20NZ%20Home%20Scorecard%0ACategory%3A%20Pest%20Control%0ARisk%20Score%3A%200%2F100%20(Low)%0ASelected%20Risk%20Points%3A%200%2F0%0ATotal%20Possible%20Category%20Points%3A%20107%0AAnswered%3A%200%2F13%0A%0AWhy%20this%20score%3A%0ANo%20score%20explanation%20is%20available%20yet%20because%20no%20questions%20have%20been%20answered.%0A%0AContact%3A%200508%20468%20789%20%7C%20pest%40trulynolen.co.nz\">\n              Email Summary\n            <\/a>\n            <button class=\"nxpbd-btn nxpbd-btn--ghost\" type=\"button\" data-nxpbd-copy=\"1\">\n              Copy Summary\n            <\/button>\n            <button class=\"nxpbd-btn nxpbd-btn--ghost\" type=\"button\" data-nxpbd-reset=\"1\">\n              Reset Category\n            <\/button>\n          <\/div>\n        <\/section>\n      \n            <\/main>\n          <\/div>\n        <\/div>\n      <\/section>\n\n<style>\n  .nxpbd-scorecard-wrap,\n  .nxpbd-scorecard-wrap * {\n    box-sizing: border-box;\n  }\n\n  .nxpbd-scorecard-wrap {\n    --nxpbd-yellow: #ffd200;\n    --nxpbd-red: #d71920;\n    --nxpbd-dark: #171717;\n    --nxpbd-muted: #6b7280;\n    --nxpbd-soft: #fff8d7;\n    --nxpbd-line: #e8e8e8;\n    --nxpbd-green: #23a455;\n    --nxpbd-orange: #f59e0b;\n    --nxpbd-shadow: 0 18px 55px rgba(23, 23, 23, 0.1);\n    color: var(--nxpbd-dark);\n    font-family: inherit;\n    padding: clamp(30px, 5vw, 70px) 16px;\n    background:\n      radial-gradient(circle at top left, rgba(255, 210, 0, 0.25), transparent 34%),\n      linear-gradient(180deg, #fffdf5 0%, #ffffff 62%);\n  }\n\n  .nxpbd-scorecard {\n    max-width: 1180px;\n    margin: 0 auto;\n  }\n\n  .nxpbd-scorecard__hero {\n    display: grid;\n    grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);\n    gap: 24px;\n    align-items: stretch;\n    margin-bottom: 26px;\n  }\n\n  .nxpbd-hero-card,\n  .nxpbd-risk-panel,\n  .nxpbd-question-card,\n  .nxpbd-summary-panel {\n    background: rgba(255, 255, 255, 0.94);\n    border: 1px solid rgba(232, 232, 232, 0.95);\n    border-radius: 26px;\n    box-shadow: var(--nxpbd-shadow);\n  }\n\n  .nxpbd-hero-card {\n    padding: clamp(24px, 4vw, 42px);\n    position: relative;\n    overflow: hidden;\n  }\n\n  .nxpbd-hero-card:after {\n    content: \"\";\n    position: absolute;\n    width: 180px;\n    height: 180px;\n    right: -70px;\n    top: -70px;\n    border-radius: 999px;\n    background: var(--nxpbd-yellow);\n    opacity: 0.35;\n  }\n\n  .nxpbd-eyebrow {\n    display: inline-flex;\n    align-items: center;\n    gap: 8px;\n    padding: 8px 13px;\n    border-radius: 999px;\n    background: var(--nxpbd-soft);\n    color: #8a5b00;\n    font-weight: 800;\n    font-size: 13px;\n    letter-spacing: 0.02em;\n    text-transform: uppercase;\n    margin-bottom: 15px;\n  }\n\n  .nxpbd-scorecard h2,\n  .nxpbd-scorecard h3,\n  .nxpbd-scorecard h4,\n  .nxpbd-scorecard p {\n    margin-top: 0;\n  }\n\n  .nxpbd-scorecard h2 {\n    font-size: clamp(32px, 5vw, 56px);\n    line-height: 0.98;\n    letter-spacing: -0.05em;\n    margin-bottom: 16px;\n    max-width: 780px;\n  }\n\n  .nxpbd-scorecard h2 span {\n    color: var(--nxpbd-red);\n  }\n\n  .nxpbd-lead {\n    color: #4b5563;\n    font-size: 18px;\n    line-height: 1.65;\n    max-width: 760px;\n    margin-bottom: 24px;\n  }\n\n  .nxpbd-hero-actions {\n    display: flex;\n    flex-wrap: wrap;\n    gap: 12px;\n    align-items: center;\n  }\n\n  .nxpbd-btn {\n    appearance: none;\n    border: 0;\n    border-radius: 999px;\n    padding: 13px 20px;\n    min-height: 48px;\n    display: inline-flex;\n    gap: 9px;\n    align-items: center;\n    justify-content: center;\n    cursor: pointer;\n    text-decoration: none !important;\n    font-weight: 900;\n    line-height: 1;\n    transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;\n  }\n\n  .nxpbd-btn:hover {\n    transform: translateY(-2px);\n  }\n\n  .nxpbd-btn--primary {\n    background: var(--nxpbd-red);\n    color: #ffffff !important;\n    box-shadow: 0 12px 24px rgba(215, 25, 32, 0.22);\n  }\n\n  .nxpbd-btn--secondary {\n    background: var(--nxpbd-yellow);\n    color: #111111 !important;\n    box-shadow: 0 12px 24px rgba(255, 210, 0, 0.22);\n  }\n\n  .nxpbd-btn--ghost {\n    background: #ffffff;\n    color: var(--nxpbd-dark) !important;\n    border: 1px solid var(--nxpbd-line);\n  }\n\n  .nxpbd-risk-panel {\n    padding: 24px;\n    display: grid;\n    align-content: center;\n    gap: 18px;\n  }\n\n  .nxpbd-risk-title {\n    display: flex;\n    justify-content: space-between;\n    gap: 16px;\n    align-items: center;\n  }\n\n  .nxpbd-risk-title strong {\n    display: block;\n    font-size: 13px;\n    text-transform: uppercase;\n    letter-spacing: 0.08em;\n    color: var(--nxpbd-muted);\n  }\n\n  .nxpbd-risk-title span {\n    font-weight: 950;\n    font-size: 22px;\n  }\n\n  .nxpbd-meter {\n    --p: 0;\n    --risk-color: var(--nxpbd-green);\n    width: min(250px, 76vw);\n    aspect-ratio: 1;\n    margin: 0 auto;\n    border-radius: 999px;\n    background: conic-gradient(var(--risk-color) calc(var(--p) * 1%), #edf0f3 0);\n    display: grid;\n    place-items: center;\n    position: relative;\n    transition: background 0.3s ease;\n  }\n\n  .nxpbd-meter:before {\n    content: \"\";\n    width: 75%;\n    aspect-ratio: 1;\n    border-radius: 999px;\n    background: #ffffff;\n    position: absolute;\n    box-shadow: inset 0 0 0 1px #eeeeee;\n  }\n\n  .nxpbd-meter__inner {\n    position: relative;\n    z-index: 2;\n    text-align: center;\n  }\n\n  .nxpbd-meter__score {\n    display: block;\n    font-size: 54px;\n    font-weight: 950;\n    letter-spacing: -0.08em;\n    line-height: 1;\n  }\n\n  .nxpbd-meter__label {\n    display: inline-flex;\n    margin-top: 7px;\n    padding: 7px 12px;\n    border-radius: 999px;\n    font-weight: 950;\n    font-size: 13px;\n    background: #f5f5f5;\n    color: var(--risk-color);\n    text-transform: uppercase;\n    letter-spacing: 0.05em;\n  }\n\n  .nxpbd-risk-scale {\n    display: grid;\n    gap: 8px;\n  }\n\n  .nxpbd-scale-row {\n    display: flex;\n    justify-content: space-between;\n    color: var(--nxpbd-muted);\n    font-size: 13px;\n    font-weight: 800;\n  }\n\n  .nxpbd-scale-track {\n    height: 12px;\n    border-radius: 999px;\n    overflow: hidden;\n    display: grid;\n    grid-template-columns: 1fr 1fr 1fr;\n    background: #efefef;\n  }\n\n  .nxpbd-scale-track span:nth-child(1) { background: var(--nxpbd-green); }\n  .nxpbd-scale-track span:nth-child(2) { background: var(--nxpbd-orange); }\n  .nxpbd-scale-track span:nth-child(3) { background: var(--nxpbd-red); }\n\n  .nxpbd-progress {\n    background: #f6f6f6;\n    border-radius: 999px;\n    height: 10px;\n    overflow: hidden;\n  }\n\n  .nxpbd-progress span {\n    display: block;\n    height: 100%;\n    width: var(--done, 0%);\n    background: var(--nxpbd-yellow);\n    border-radius: inherit;\n    transition: width 0.2s ease;\n  }\n\n  .nxpbd-meta {\n    color: var(--nxpbd-muted);\n    font-size: 14px;\n    line-height: 1.5;\n  }\n\n  .nxpbd-layout {\n    display: grid;\n    grid-template-columns: 280px minmax(0, 1fr);\n    gap: 22px;\n    align-items: start;\n  }\n\n  .nxpbd-tabs {\n    position: sticky;\n    top: 20px;\n    display: grid;\n    gap: 10px;\n  }\n\n  .nxpbd-tab {\n    appearance: none;\n    border: 1px solid var(--nxpbd-line);\n    background: #ffffff;\n    color: var(--nxpbd-dark);\n    border-radius: 18px;\n    padding: 15px;\n    text-align: left;\n    cursor: pointer;\n    display: grid;\n    gap: 5px;\n    transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;\n  }\n\n  .nxpbd-tab:hover {\n    transform: translateY(-1px);\n  }\n\n  .nxpbd-tab.is-active {\n    border-color: var(--nxpbd-red);\n    box-shadow: 0 14px 34px rgba(215, 25, 32, 0.12);\n    background: linear-gradient(135deg, #fff8d7, #ffffff);\n  }\n\n  .nxpbd-tab strong {\n    font-size: 16px;\n    font-weight: 950;\n  }\n\n  .nxpbd-tab span {\n    color: var(--nxpbd-muted);\n    font-size: 13px;\n  }\n\n  .nxpbd-content {\n    display: grid;\n    gap: 18px;\n  }\n\n  .nxpbd-category-head {\n    display: flex;\n    gap: 18px;\n    justify-content: space-between;\n    align-items: flex-end;\n    padding: 4px 2px 10px;\n    border-bottom: 1px solid var(--nxpbd-line);\n  }\n\n  .nxpbd-category-head h3 {\n    font-size: clamp(25px, 3vw, 34px);\n    letter-spacing: -0.04em;\n    margin-bottom: 6px;\n  }\n\n  .nxpbd-category-head p {\n    margin-bottom: 0;\n    color: var(--nxpbd-muted);\n    line-height: 1.55;\n  }\n\n  .nxpbd-mini-score {\n    flex: 0 0 auto;\n    min-width: 118px;\n    text-align: center;\n    border-radius: 18px;\n    background: #ffffff;\n    border: 1px solid var(--nxpbd-line);\n    padding: 12px;\n  }\n\n  .nxpbd-mini-score strong {\n    display: block;\n    font-size: 30px;\n    line-height: 1;\n  }\n\n  .nxpbd-mini-score span {\n    color: var(--nxpbd-muted);\n    font-size: 12px;\n    font-weight: 800;\n    text-transform: uppercase;\n  }\n\n  .nxpbd-question-card {\n    padding: clamp(18px, 3vw, 28px);\n  }\n\n  .nxpbd-question-top {\n    display: flex;\n    gap: 14px;\n    align-items: flex-start;\n    margin-bottom: 16px;\n  }\n\n  .nxpbd-question-number {\n    width: 38px;\n    height: 38px;\n    flex: 0 0 38px;\n    border-radius: 14px;\n    display: grid;\n    place-items: center;\n    background: var(--nxpbd-yellow);\n    color: #111111;\n    font-weight: 950;\n  }\n\n  .nxpbd-question-title {\n    margin: 0;\n    font-size: 19px;\n    line-height: 1.35;\n    letter-spacing: -0.01em;\n  }\n\n  .nxpbd-question-help {\n    color: var(--nxpbd-muted);\n    margin: 5px 0 0;\n    line-height: 1.5;\n    font-size: 14px;\n  }\n\n  .nxpbd-options {\n    display: grid;\n    grid-template-columns: repeat(2, minmax(0, 1fr));\n    gap: 10px;\n  }\n\n  .nxpbd-options--wide {\n    grid-template-columns: repeat(3, minmax(0, 1fr));\n  }\n\n  .nxpbd-option {\n    border: 1px solid var(--nxpbd-line);\n    background: #ffffff;\n    border-radius: 17px;\n    min-height: 66px;\n    padding: 13px;\n    cursor: pointer;\n    display: grid;\n    grid-template-columns: 22px minmax(0, 1fr) auto;\n    align-items: center;\n    gap: 10px;\n    transition: border-color 0.2s ease, background 0.2s ease, transform 0.2s ease;\n  }\n\n  .nxpbd-option:hover {\n    transform: translateY(-1px);\n    border-color: rgba(215, 25, 32, 0.35);\n  }\n\n  .nxpbd-option.is-selected {\n    border-color: var(--nxpbd-red);\n    background: #fff9db;\n  }\n\n  .nxpbd-option input {\n    position: absolute;\n    opacity: 0;\n    pointer-events: none;\n  }\n\n  .nxpbd-control {\n    width: 20px;\n    height: 20px;\n    border-radius: 999px;\n    border: 2px solid #c9c9c9;\n    display: grid;\n    place-items: center;\n  }\n\n  .nxpbd-option input[type=\"checkbox\"] + .nxpbd-control {\n    border-radius: 6px;\n  }\n\n  .nxpbd-option.is-selected .nxpbd-control {\n    border-color: var(--nxpbd-red);\n    background: var(--nxpbd-red);\n  }\n\n  .nxpbd-option.is-selected .nxpbd-control:after {\n    content: \"\";\n    width: 8px;\n    height: 8px;\n    border-radius: 999px;\n    background: #ffffff;\n  }\n\n  .nxpbd-option input[type=\"checkbox\"] + .nxpbd-control:after {\n    border-radius: 2px;\n  }\n\n  .nxpbd-option strong {\n    display: block;\n    font-size: 15px;\n    line-height: 1.3;\n  }\n\n  .nxpbd-option small {\n    display: block;\n    color: var(--nxpbd-muted);\n    line-height: 1.35;\n    margin-top: 3px;\n  }\n\n  .nxpbd-points {\n    align-self: start;\n    min-width: 34px;\n    padding: 5px 7px;\n    border-radius: 999px;\n    background: #f4f4f4;\n    text-align: center;\n    font-size: 12px;\n    font-weight: 950;\n    color: #4b5563;\n  }\n\n  .nxpbd-option.is-selected .nxpbd-points {\n    background: var(--nxpbd-red);\n    color: #ffffff;\n  }\n\n  .nxpbd-feedback {\n    margin-top: 15px;\n    border-left: 4px solid var(--nxpbd-yellow);\n    background: #fffdf0;\n    border-radius: 14px;\n    padding: 14px 15px;\n    color: #4b5563;\n    line-height: 1.55;\n    font-size: 14px;\n  }\n\n  .nxpbd-feedback strong {\n    color: var(--nxpbd-dark);\n  }\n\n  .nxpbd-summary-panel {\n    padding: clamp(20px, 3vw, 28px);\n    margin-top: 10px;\n  }\n\n  .nxpbd-summary-head {\n    display: flex;\n    gap: 15px;\n    justify-content: space-between;\n    align-items: flex-start;\n    margin-bottom: 18px;\n  }\n\n  .nxpbd-summary-head h3 {\n    font-size: 25px;\n    letter-spacing: -0.03em;\n    margin-bottom: 5px;\n  }\n\n  .nxpbd-summary-head p {\n    color: var(--nxpbd-muted);\n    margin-bottom: 0;\n    line-height: 1.55;\n  }\n\n  .nxpbd-score-explain {\n    display: grid;\n    gap: 16px;\n    margin: 18px 0;\n  }\n\n  .nxpbd-score-formula {\n    border: 1px solid var(--nxpbd-line);\n    border-radius: 18px;\n    background: linear-gradient(135deg, #fff8d7, #ffffff);\n    padding: 18px;\n  }\n\n  .nxpbd-score-formula span {\n    display: block;\n    color: var(--nxpbd-muted);\n    font-size: 12px;\n    font-weight: 900;\n    letter-spacing: 0.08em;\n    text-transform: uppercase;\n    margin-bottom: 6px;\n  }\n\n  .nxpbd-score-formula strong {\n    display: block;\n    color: var(--nxpbd-dark);\n    font-size: 22px;\n    line-height: 1.25;\n    margin-bottom: 8px;\n  }\n\n  .nxpbd-score-formula p {\n    margin: 0;\n    color: #4b5563;\n    line-height: 1.6;\n  }\n\n  .nxpbd-summary-title {\n    margin: 22px 0 12px;\n    font-size: 18px;\n    font-weight: 950;\n    color: var(--nxpbd-dark);\n  }\n\n  .nxpbd-factor-grid {\n    display: grid;\n    grid-template-columns: repeat(2, minmax(0, 1fr));\n    gap: 12px;\n  }\n\n  .nxpbd-factor-card {\n    border: 1px solid var(--nxpbd-line);\n    border-radius: 18px;\n    background: #ffffff;\n    padding: 15px;\n  }\n\n  .nxpbd-factor-card.is-top {\n    border-color: rgba(215, 25, 32, 0.35);\n    background: #fffdf0;\n  }\n\n  .nxpbd-factor-head {\n    display: flex;\n    justify-content: space-between;\n    gap: 12px;\n    align-items: flex-start;\n    margin-bottom: 10px;\n  }\n\n  .nxpbd-factor-head strong {\n    display: block;\n    color: var(--nxpbd-dark);\n    font-size: 15px;\n    line-height: 1.3;\n  }\n\n  .nxpbd-factor-head span {\n    flex: 0 0 auto;\n    color: var(--nxpbd-red);\n    font-size: 13px;\n    font-weight: 950;\n  }\n\n  .nxpbd-factor-card p {\n    margin: 0 0 12px;\n    color: var(--nxpbd-muted);\n    font-size: 14px;\n    line-height: 1.5;\n  }\n\n  .nxpbd-factor-bar {\n    height: 9px;\n    border-radius: 999px;\n    background: #f0f0f0;\n    overflow: hidden;\n  }\n\n  .nxpbd-factor-bar span {\n    display: block;\n    height: 100%;\n    width: var(--factor-width, 0%);\n    border-radius: inherit;\n    background: var(--nxpbd-red);\n  }\n\n  .nxpbd-driver-list {\n    display: grid;\n    gap: 10px;\n    margin: 0;\n    padding: 0;\n    list-style: none;\n  }\n\n  .nxpbd-driver-item {\n    display: grid;\n    grid-template-columns: auto minmax(0, 1fr);\n    gap: 12px;\n    border: 1px solid var(--nxpbd-line);\n    border-radius: 18px;\n    background: #ffffff;\n    padding: 14px;\n  }\n\n  .nxpbd-driver-points {\n    min-width: 52px;\n    height: 36px;\n    border-radius: 999px;\n    display: inline-flex;\n    align-items: center;\n    justify-content: center;\n    background: var(--nxpbd-red);\n    color: #ffffff;\n    font-size: 13px;\n    font-weight: 950;\n  }\n\n  .nxpbd-driver-item strong {\n    display: block;\n    margin-bottom: 5px;\n    color: var(--nxpbd-dark);\n    line-height: 1.35;\n  }\n\n  .nxpbd-driver-item p {\n    margin: 0;\n    color: var(--nxpbd-muted);\n    font-size: 14px;\n    line-height: 1.5;\n  }\n\n  .nxpbd-answer-pill {\n    display: inline-flex;\n    margin: 6px 0;\n    padding: 6px 10px;\n    border-radius: 999px;\n    background: #f5f5f5;\n    color: var(--nxpbd-dark);\n    font-size: 13px;\n    font-weight: 850;\n  }\n\n  .nxpbd-good-signals {\n    display: grid;\n    gap: 8px;\n    margin: 0;\n    padding: 0;\n    list-style: none;\n  }\n\n  .nxpbd-good-signals li {\n    border: 1px solid #dcefe2;\n    border-radius: 14px;\n    background: #f6fff8;\n    color: #23613a;\n    padding: 11px 13px;\n    font-size: 14px;\n    line-height: 1.45;\n  }\n\n  .nxpbd-empty {\n    padding: 16px;\n    border-radius: 16px;\n    background: #f9fafb;\n    color: var(--nxpbd-muted);\n    line-height: 1.55;\n  }\n\n  .nxpbd-footer-actions {\n    display: flex;\n    flex-wrap: wrap;\n    gap: 10px;\n    margin-top: 18px;\n  }\n\n  @media (max-width: 980px) {\n    .nxpbd-scorecard__hero,\n    .nxpbd-layout {\n      grid-template-columns: 1fr;\n    }\n\n    .nxpbd-tabs {\n      position: static;\n      grid-template-columns: repeat(3, minmax(0, 1fr));\n    }\n\n    .nxpbd-tab {\n      text-align: center;\n    }\n  }\n\n  @media (max-width: 720px) {\n    .nxpbd-options,\n    .nxpbd-options--wide,\n    .nxpbd-factor-grid {\n      grid-template-columns: 1fr;\n    }\n\n    .nxpbd-category-head,\n    .nxpbd-summary-head {\n      display: grid;\n      align-items: start;\n    }\n\n    .nxpbd-tabs {\n      grid-template-columns: 1fr;\n    }\n\n    .nxpbd-scorecard-wrap {\n      padding-inline: 12px;\n    }\n\n    .nxpbd-driver-item {\n      grid-template-columns: 1fr;\n    }\n\n    .nxpbd-driver-points {\n      width: max-content;\n    }\n  }\n<\/style>\n\n<script>\n(function () {\n  \"use strict\";\n\n  const initScorecard = () => {\n    const root = document.getElementById(\"nxpbd-home-scorecard\");\n    if (!root) return;\n\n    const SCORECARD = {\n      phone: \"577 73 88 33\",\n      tel: \"+995577738833\",\n      email: \"info@trulynolen.ge\",\n      contactUrl: \"\/en\/contact\/\",\n      categories: [\n        {\n          id: \"pest\",\n          name: \"Pest Control\",\n          kicker: \"Whole-home pest risk\",\n          description: \"Check common entry points, pest sightings, food sources, moisture, cleaning habits, and property layout.\",\n          questions: [\n            {\n              id: \"door-light\",\n              title: \"Can you see daylight around the sides, top, or bottom of exterior doors?\",\n              type: \"radio\",\n              options: [\n                { value: \"yes\", label: \"Yes\", score: 8, feedback: \"Visible daylight usually means pests may also have an easy entry route. Weather stripping and door seals should be checked.\" },\n                { value: \"no\", label: \"No\", score: 0, feedback: \"A well-sealed doorway lowers the chance of pests using exterior doors as entry points.\" }\n              ]\n            },\n            {\n              id: \"caulk-doors\",\n              title: \"When did you last caulk or seal around exterior doors?\",\n              type: \"radio\",\n              options: [\n                { value: \"year\", label: \"Within the last year\", score: 0, feedback: \"Fresh sealant is usually flexible and effective, so your entry-point risk is lower.\" },\n                { value: \"three\", label: \"Within the last 3 years\", score: 4, feedback: \"Some sealant may be starting to crack. A quick perimeter check is recommended.\" },\n                { value: \"old\", label: \"More than 3 years ago\", score: 8, feedback: \"Older sealant can split or flake away, creating gaps that pests can exploit.\" }\n              ]\n            },\n            {\n              id: \"pests-seen\",\n              title: \"Which pests have you seen inside during the last month?\",\n              help: \"Select all that apply. Choosing \u201cNone\u201d clears the other selections.\",\n              type: \"checkbox\",\n              maxScore: 20,\n              options: [\n                { value: \"ants\", label: \"Ants\", score: 3, feedback: \"Ants often indicate food access, moisture, or exterior trails leading indoors.\" },\n                { value: \"bed-bugs\", label: \"Bed Bugs\", score: 10, feedback: \"Bed bugs need prompt professional attention because they spread easily between rooms and belongings.\" },\n                { value: \"bees-wasps\", label: \"Bees or Wasps\", score: 5, feedback: \"Stinging insects may indicate a nest nearby. Avoid disturbing nests yourself.\" },\n                { value: \"crickets\", label: \"Crickets\", score: 3, feedback: \"Crickets are often attracted by shelter, light, and small exterior gaps.\" },\n                { value: \"earwigs\", label: \"Earwigs\", score: 3, feedback: \"Earwigs usually point to damp areas, mulch, or garden beds close to the home.\" },\n                { value: \"fleas\", label: \"Fleas\", score: 6, feedback: \"Fleas can persist in carpets, pet bedding, and shaded outdoor areas.\" },\n                { value: \"roaches\", label: \"Cockroaches\", score: 10, feedback: \"Cockroach activity can escalate quickly and should be treated early.\" },\n                { value: \"rodents\", label: \"Rodents\", score: 10, feedback: \"Rodent sightings usually mean sealing, trapping, and sanitation need urgent review.\" },\n                { value: \"silverfish\", label: \"Silverfish\", score: 3, feedback: \"Silverfish often indicate humidity, stored paper\/cardboard, or hidden moisture.\" },\n                { value: \"spiders\", label: \"Spiders\", score: 3, feedback: \"Spiders may follow other insects indoors and often use quiet corners or gaps.\" },\n                { value: \"termites\", label: \"Termites\", score: 12, feedback: \"Termite activity requires a professional inspection to assess structural risk.\" },\n                { value: \"ticks\", label: \"Ticks\", score: 6, feedback: \"Ticks can be associated with pets, lawns, wildlife, or dense vegetation.\" },\n                { value: \"none\", label: \"None\", score: 0, exclusive: true, feedback: \"No recent indoor pest sightings is a good sign. Keep monitoring entry points and food sources.\" }\n              ]\n            },\n            {\n              id: \"home-age\",\n              title: \"How old is your home?\",\n              type: \"radio\",\n              options: [\n                { value: \"new\", label: \"Less than 1 year\", score: 5, feedback: \"New builds can still disturb nearby pest habitats, especially during landscaping and construction.\" },\n                { value: \"one-five\", label: \"1\u20135 years\", score: 1, feedback: \"A newer home usually has fewer age-related gaps, but perimeter checks still matter.\" },\n                { value: \"six-ten\", label: \"6\u201310 years\", score: 4, feedback: \"Sealants, eaves, and window frames may need more regular inspection at this stage.\" },\n                { value: \"ten-plus\", label: \"10+ years\", score: 8, feedback: \"Older homes have had more time to develop gaps, moisture issues, and pest access points.\" }\n              ]\n            },\n            {\n              id: \"structure\",\n              title: \"What is your home\u2019s main structure?\",\n              type: \"radio\",\n              options: [\n                { value: \"timber-stucco\", label: \"Timber, weatherboard, or stucco\", score: 7, feedback: \"Timber and framed areas can provide pest access if cracks, knots, gaps, or moisture are present.\" },\n                { value: \"brick-block\", label: \"Brick, block, or masonry\", score: 3, feedback: \"Masonry can lower some risks, but small cracks and service penetrations still need sealing.\" },\n                { value: \"solid-plaster\", label: \"Solid plaster or concrete\", score: 2, feedback: \"A sealed solid surface is helpful, though any crack or unsealed service point still matters.\" }\n              ]\n            },\n            {\n              id: \"trees\",\n              title: \"Are trees within 1 metre of the home, or do branches hang over the roof?\",\n              type: \"radio\",\n              options: [\n                { value: \"yes\", label: \"Yes\", score: 7, feedback: \"Overhanging branches can act like bridges for insects and rodents.\" },\n                { value: \"no\", label: \"No\", score: 0, feedback: \"Keeping trees away from the structure reduces roof and attic access routes.\" }\n              ]\n            },\n            {\n              id: \"garden-beds\",\n              title: \"Do you have flower or plant beds directly along the home perimeter?\",\n              type: \"radio\",\n              options: [\n                { value: \"yes\", label: \"Yes\", score: 5, feedback: \"Garden beds can hold moisture and harbour insects close to windows, doors, and wall gaps.\" },\n                { value: \"no\", label: \"No\", score: 0, feedback: \"A clear perimeter helps reduce pest shelter and makes inspections easier.\" }\n              ]\n            },\n            {\n              id: \"dripping-taps\",\n              title: \"Do you have dripping outdoor taps or plumbing leaks?\",\n              type: \"radio\",\n              options: [\n                { value: \"yes\", label: \"Yes\", score: 7, feedback: \"Persistent moisture attracts pests and can contribute to wood decay.\" },\n                { value: \"no\", label: \"No\", score: 0, feedback: \"Dry exterior plumbing areas are less attractive to pests.\" }\n              ]\n            },\n            {\n              id: \"pet-food\",\n              title: \"If you have pets, how long is food left out?\",\n              type: \"radio\",\n              options: [\n                { value: \"under-hour\", label: \"Less than 1 hour\", score: 0, feedback: \"Removing pet food quickly helps reduce pest attraction.\" },\n                { value: \"one-three\", label: \"1\u20133 hours\", score: 4, feedback: \"Food left out for several hours can invite insects and rodents.\" },\n                { value: \"all-day\", label: \"All day\", score: 8, feedback: \"All-day food access is highly attractive to pests and should be avoided.\" },\n                { value: \"na\", label: \"N\/A, no pets\", score: 0, feedback: \"No pet food source means this risk factor does not apply.\" }\n              ]\n            },\n            {\n              id: \"dwelling\",\n              title: \"What type of dwelling do you live in?\",\n              type: \"radio\",\n              options: [\n                { value: \"detached\", label: \"Single detached home\", score: 0, feedback: \"A detached home gives you more control over surrounding pest pressures.\" },\n                { value: \"townhouse\", label: \"Connected townhouse\", score: 4, feedback: \"Shared walls and close neighbours can make coordinated pest prevention important.\" },\n                { value: \"apartment\", label: \"Unit, apartment, or shared building\", score: 7, feedback: \"Shared buildings can transfer pest issues between neighbouring spaces.\" }\n              ]\n            },\n            {\n              id: \"livestock\",\n              title: \"Do you keep horses, chickens, or other livestock on the property?\",\n              type: \"radio\",\n              options: [\n                { value: \"yes\", label: \"Yes\", score: 6, feedback: \"Feed and bedding can attract rodents and insects, especially if stored near the home.\" },\n                { value: \"no\", label: \"No\", score: 0, feedback: \"No livestock feed source lowers this attraction risk.\" }\n              ]\n            },\n            {\n              id: \"vacuum\",\n              title: \"How often do you vacuum floors?\",\n              type: \"radio\",\n              options: [\n                { value: \"daily\", label: \"Daily\", score: 0, feedback: \"Frequent vacuuming removes crumbs, eggs, hair, and pest attractants.\" },\n                { value: \"twice\", label: \"Twice a week\", score: 2, feedback: \"This is a strong cleaning routine, especially when paired with food storage control.\" },\n                { value: \"weekly\", label: \"Weekly\", score: 4, feedback: \"Weekly cleaning can be enough for some homes, but pets and children may increase pest attraction.\" },\n                { value: \"fortnightly\", label: \"Every other week\", score: 7, feedback: \"Less frequent vacuuming can leave food particles and debris available for pests.\" },\n                { value: \"monthly\", label: \"Monthly\", score: 9, feedback: \"Monthly vacuuming may allow pest attractants to build up indoors.\" }\n              ]\n            },\n            {\n              id: \"garbage\",\n              title: \"How do you usually store rubbish before collection?\",\n              type: \"radio\",\n              options: [\n                { value: \"garage\", label: \"Bin kept inside garage\", score: 7, feedback: \"Indoor or garage bins can attract pests closer to living spaces.\" },\n                { value: \"outside\", label: \"Bin kept outside\", score: 3, feedback: \"Outside bins are better, but lids should stay sealed and the area should be kept clean.\" },\n                { value: \"communal\", label: \"Shared or property dumpster\", score: 2, feedback: \"A shared bin area can lower indoor risk if it is not directly against your home.\" }\n              ]\n            }\n          ]\n        },\n        {\n          id: \"termite\",\n          name: \"Termite Control\",\n          kicker: \"Moisture and timber risk\",\n          description: \"Review moisture, structure, cracks, garden beds, prior treatment, and inspection history.\",\n          questions: [\n            {\n              id: \"water-pooling\",\n              title: \"When it rains, does water pool against your home?\",\n              type: \"radio\",\n              options: [\n                { value: \"yes\", label: \"Yes\", score: 9, feedback: \"Water pooling can create damp conditions that increase termite and timber-decay risk.\" },\n                { value: \"no\", label: \"No\", score: 0, feedback: \"Good drainage around the home helps reduce termite pressure.\" }\n              ]\n            },\n            {\n              id: \"neighbour-termite\",\n              title: \"Has a neighbour had recent termite activity?\",\n              type: \"radio\",\n              options: [\n                { value: \"yes\", label: \"Yes\", score: 8, feedback: \"Nearby termite activity means your property should be inspected carefully.\" },\n                { value: \"no\", label: \"No\", score: 1, feedback: \"No known neighbour activity is positive, but it does not replace regular inspections.\" },\n                { value: \"unknown\", label: \"I don\u2019t know\", score: 5, feedback: \"Unknown nearby activity is a reason to stay cautious and keep inspections current.\" }\n              ]\n            },\n            {\n              id: \"recent-additions\",\n              title: \"Have you built recent additions or renovations?\",\n              type: \"radio\",\n              options: [\n                { value: \"yes\", label: \"Yes\", score: 5, feedback: \"Renovations can expose timber, disturb soil, or create new gaps around the structure.\" },\n                { value: \"no\", label: \"No\", score: 0, feedback: \"No recent building work lowers this specific risk factor.\" }\n              ]\n            },\n            {\n              id: \"termite-home-age\",\n              title: \"When was your home built?\",\n              type: \"radio\",\n              options: [\n                { value: \"new\", label: \"New home, less than 1 year\", score: 1, feedback: \"A new home may have lower age-related risk, but new landscaping and timber contact still matter.\" },\n                { value: \"one-five\", label: \"1\u20135 years\", score: 3, feedback: \"A young home should still be checked, especially around moisture and timber-to-ground contact.\" },\n                { value: \"six-ten\", label: \"6\u201310 years\", score: 5, feedback: \"Inspection history becomes more important as homes age.\" },\n                { value: \"ten-twenty\", label: \"10\u201320 years\", score: 7, feedback: \"Older homes are more likely to have cracks, damp timber, or changed drainage.\" },\n                { value: \"twenty-plus\", label: \"21+ years\", score: 10, feedback: \"Older properties can carry higher termite risk and should not skip inspections.\" }\n              ]\n            },\n            {\n              id: \"termite-structure\",\n              title: \"What is the structure of the home?\",\n              type: \"radio\",\n              options: [\n                { value: \"timber-stucco\", label: \"Timber, weatherboard, or stucco\", score: 8, feedback: \"Timber and framed structures need careful termite prevention and regular checks.\" },\n                { value: \"brick-block\", label: \"Brick, block, or masonry\", score: 4, feedback: \"Masonry can help, but termites can still enter through cracks, pipes, and damp areas.\" },\n                { value: \"solid-plaster\", label: \"Solid plaster or concrete\", score: 4, feedback: \"Solid surfaces reduce some access, but damp cracks and service points remain important.\" }\n              ]\n            },\n            {\n              id: \"termite-trees\",\n              title: \"Are trees within 1 metre of the home, or do branches overhang the home?\",\n              type: \"radio\",\n              options: [\n                { value: \"yes\", label: \"Yes\", score: 4, feedback: \"Branches can trap moisture around eaves and roof edges, increasing timber risk.\" },\n                { value: \"no\", label: \"No\", score: 0, feedback: \"Keeping branches away helps exterior areas dry properly.\" }\n              ]\n            },\n            {\n              id: \"termite-garden\",\n              title: \"Are plant beds or mulch areas close to the home perimeter?\",\n              type: \"radio\",\n              options: [\n                { value: \"yes\", label: \"Yes\", score: 7, feedback: \"Mulch and damp planting zones near walls can increase termite pressure.\" },\n                { value: \"no\", label: \"No\", score: 0, feedback: \"A clear, dry perimeter reduces termite-friendly conditions.\" }\n              ]\n            },\n            {\n              id: \"termite-taps\",\n              title: \"Do you have dripping exterior taps or constant damp soil?\",\n              type: \"radio\",\n              options: [\n                { value: \"yes\", label: \"Yes\", score: 8, feedback: \"Moist soil is attractive to termites and should be corrected quickly.\" },\n                { value: \"no\", label: \"No\", score: 0, feedback: \"Dry soil around plumbing points is a good protective factor.\" }\n              ]\n            },\n            {\n              id: \"storm-damage\",\n              title: \"Have you had recent storm or water damage?\",\n              type: \"radio\",\n              options: [\n                { value: \"yes\", label: \"Yes\", score: 7, feedback: \"Storm damage can leave hidden moisture or rotting timber that attracts termites.\" },\n                { value: \"no\", label: \"No\", score: 0, feedback: \"No recent damage lowers the chance of hidden moisture problems.\" }\n              ]\n            },\n            {\n              id: \"foundation-cracks\",\n              title: \"Have you noticed cracks in the foundation, slab edge, or exterior walls?\",\n              type: \"radio\",\n              options: [\n                { value: \"yes\", label: \"Yes\", score: 8, feedback: \"Cracks can provide hidden access paths and should be inspected.\" },\n                { value: \"no\", label: \"No\", score: 0, feedback: \"No visible cracks is positive, but concealed entry points can still exist.\" }\n              ]\n            },\n            {\n              id: \"termite-treated\",\n              title: \"Has your home been treated for termites before?\",\n              type: \"radio\",\n              options: [\n                { value: \"yes\", label: \"Yes\", score: 0, feedback: \"Previous treatment may provide residual protection, depending on the system and timing.\" },\n                { value: \"no\", label: \"No\", score: 8, feedback: \"No previous treatment means there may be no residual protection in place.\" }\n              ]\n            },\n            {\n              id: \"inspection\",\n              title: \"When was your last formal termite inspection?\",\n              type: \"radio\",\n              options: [\n                { value: \"year\", label: \"Within the last year\", score: 0, feedback: \"A recent inspection is the best way to keep small problems from becoming costly.\" },\n                { value: \"one-three\", label: \"1\u20133 years ago\", score: 4, feedback: \"Annual checks are recommended, so consider booking an updated inspection.\" },\n                { value: \"four-six\", label: \"4\u20136 years ago\", score: 7, feedback: \"Several years without inspection increases the chance of missed activity.\" },\n                { value: \"seven-plus\", label: \"7+ years ago\", score: 9, feedback: \"A long gap since inspection creates significant uncertainty.\" },\n                { value: \"unknown\", label: \"I don\u2019t know\", score: 8, feedback: \"Unknown inspection history should be treated as a higher-risk signal.\" }\n              ]\n            }\n          ]\n        },\n        {\n          id: \"rodent\",\n          name: \"Rodent Control\",\n          kicker: \"Rats and mice risk\",\n          description: \"Assess sightings, sounds, smells, openings, sealing history, wiring signs, branches, and nearby shelter.\",\n          questions: [\n            {\n              id: \"live-rodents\",\n              title: \"Have you seen live rodents inside during the past month?\",\n              type: \"radio\",\n              options: [\n                { value: \"yes\", label: \"Yes\", score: 12, feedback: \"A live sighting often means more activity is present nearby. Look for droppings and food damage.\" },\n                { value: \"no\", label: \"No\", score: 0, feedback: \"No live sightings is positive, but continue watching for droppings, gnawing, and attic noise.\" }\n              ]\n            },\n            {\n              id: \"heard-rodents\",\n              title: \"Have you heard scurrying or scratching recently?\",\n              type: \"radio\",\n              options: [\n                { value: \"yes\", label: \"Yes\", score: 10, feedback: \"Noises in walls, ceilings, or roof spaces can indicate rodent movement.\" },\n                { value: \"no\", label: \"No\", score: 2, feedback: \"No noise is good, though rodents can still be quiet in insulated spaces.\" }\n              ]\n            },\n            {\n              id: \"smell\",\n              title: \"Have you noticed a foul or unusual smell?\",\n              type: \"radio\",\n              options: [\n                { value: \"yes\", label: \"Yes\", score: 12, feedback: \"Strong odours can indicate nesting, urine, droppings, or dead rodents.\" },\n                { value: \"no\", label: \"No\", score: 3, feedback: \"No smell lowers concern, but odour may appear only after activity becomes advanced.\" }\n              ]\n            },\n            {\n              id: \"openings\",\n              title: \"Are there openings around vents, eaves, pipes, doors, or cladding?\",\n              type: \"radio\",\n              options: [\n                { value: \"yes\", label: \"Yes\", score: 10, feedback: \"Small holes can be enough for rodents to enter. Sealing is a key prevention step.\" },\n                { value: \"no\", label: \"No\", score: 0, feedback: \"Good exclusion reduces the chance of rodents entering living spaces.\" }\n              ]\n            },\n            {\n              id: \"sealed-house\",\n              title: \"When did you last fully screen, caulk, and seal exterior entry points?\",\n              type: \"radio\",\n              options: [\n                { value: \"year\", label: \"Less than 1 year\", score: 0, feedback: \"Fresh sealing is one of the strongest rodent prevention measures.\" },\n                { value: \"one-three\", label: \"1\u20133 years\", score: 4, feedback: \"Seals and screens may need checking for movement, cracks, or damage.\" },\n                { value: \"three-plus\", label: \"More than 3 years\", score: 8, feedback: \"Older sealing can fail, leaving easy rodent access points.\" }\n              ]\n            },\n            {\n              id: \"electrical\",\n              title: \"Have you had unexplained electrical issues?\",\n              type: \"radio\",\n              options: [\n                { value: \"yes\", label: \"Yes\", score: 10, feedback: \"Rodents can gnaw wiring, ducts, and pipes. Unexplained electrical faults should be investigated.\" },\n                { value: \"no\", label: \"No\", score: 0, feedback: \"No electrical issues lowers this warning sign.\" }\n              ]\n            },\n            {\n              id: \"energy-bills\",\n              title: \"Have heating or cooling bills been unusually high?\",\n              type: \"radio\",\n              options: [\n                { value: \"yes\", label: \"Yes\", score: 5, feedback: \"Rodents can damage insulation, which may affect comfort and energy use.\" },\n                { value: \"no\", label: \"No\", score: 0, feedback: \"No unusual bill increase lowers this indirect warning sign.\" }\n              ]\n            },\n            {\n              id: \"rodent-trees\",\n              title: \"Are trees within 1 metre of the home, or do branches touch\/overhang the roof?\",\n              type: \"radio\",\n              options: [\n                { value: \"yes\", label: \"Yes\", score: 6, feedback: \"Rodents can climb branches and use roofline gaps to enter.\" },\n                { value: \"no\", label: \"No\", score: 0, feedback: \"Clear rooflines reduce climbing routes into the home.\" }\n              ]\n            },\n            {\n              id: \"other-structures\",\n              title: \"Are sheds, detached garages, storage areas, or other structures near the home?\",\n              type: \"radio\",\n              options: [\n                { value: \"yes\", label: \"Yes\", score: 6, feedback: \"Quiet storage structures can provide shelter and food sources for rodents.\" },\n                { value: \"no\", label: \"No\", score: 0, feedback: \"Fewer nearby shelters can reduce rodent pressure around the house.\" }\n              ]\n            }\n          ]\n        }\n      ]\n    };\n\n    const RISK_FACTOR_META = {\n      activity: {\n        label: \"Active pest evidence\",\n        reason: \"These answers indicate visible, audible, or physical signs of pest activity already happening.\"\n      },\n      entry: {\n        label: \"Entry points\",\n        reason: \"These answers show how easily pests may be able to enter through gaps, cracks, doors, vents, or service openings.\"\n      },\n      moisture: {\n        label: \"Moisture conditions\",\n        reason: \"Moisture increases pest pressure because many pests rely on damp areas, leaks, or water pooling.\"\n      },\n      sanitation: {\n        label: \"Food and sanitation\",\n        reason: \"Food access, waste storage, pet food, and cleaning frequency can increase pest attraction.\"\n      },\n      structure: {\n        label: \"Building condition\",\n        reason: \"Age, building type, shared walls, storm damage, or structural cracks can increase pest vulnerability.\"\n      },\n      environment: {\n        label: \"Surrounding environment\",\n        reason: \"Trees, garden beds, nearby structures, neighbours, or livestock can increase pest pressure around the property.\"\n      },\n      monitoring: {\n        label: \"Protection and inspection history\",\n        reason: \"Lack of treatment, inspection, or monitoring increases uncertainty and raises the risk score.\"\n      },\n      other: {\n        label: \"General risk\",\n        reason: \"These answers add general pest risk based on property conditions.\"\n      }\n    };\n\n    const QUESTION_FACTORS = {\n      \"door-light\": \"entry\",\n      \"caulk-doors\": \"entry\",\n      \"pests-seen\": \"activity\",\n      \"home-age\": \"structure\",\n      \"structure\": \"structure\",\n      \"trees\": \"environment\",\n      \"garden-beds\": \"environment\",\n      \"dripping-taps\": \"moisture\",\n      \"pet-food\": \"sanitation\",\n      \"dwelling\": \"structure\",\n      \"livestock\": \"sanitation\",\n      \"vacuum\": \"sanitation\",\n      \"garbage\": \"sanitation\",\n\n      \"water-pooling\": \"moisture\",\n      \"neighbour-termite\": \"environment\",\n      \"recent-additions\": \"structure\",\n      \"termite-home-age\": \"structure\",\n      \"termite-structure\": \"structure\",\n      \"termite-trees\": \"environment\",\n      \"termite-garden\": \"moisture\",\n      \"termite-taps\": \"moisture\",\n      \"storm-damage\": \"moisture\",\n      \"foundation-cracks\": \"entry\",\n      \"termite-treated\": \"monitoring\",\n      \"inspection\": \"monitoring\",\n\n      \"live-rodents\": \"activity\",\n      \"heard-rodents\": \"activity\",\n      \"smell\": \"activity\",\n      \"openings\": \"entry\",\n      \"sealed-house\": \"entry\",\n      \"electrical\": \"activity\",\n      \"energy-bills\": \"structure\",\n      \"rodent-trees\": \"environment\",\n      \"other-structures\": \"environment\"\n    };\n\n    const state = {\n      active: SCORECARD.categories[0].id,\n      answers: SCORECARD.categories.reduce((acc, category) => {\n        acc[category.id] = {};\n        return acc;\n      }, {})\n    };\n\n    const escapeHTML = (value) => String(value)\n      .replace(\/&\/g, \"&amp;\")\n      .replace(\/<\/g, \"&lt;\")\n      .replace(\/>\/g, \"&gt;\")\n      .replace(\/\"\/g, \"&quot;\")\n      .replace(\/'\/g, \"&#039;\");\n\n    const getCategory = (id) => SCORECARD.categories.find((category) => category.id === id);\n\n    const getOption = (question, value) => {\n      return question.options.find((option) => option.value === value);\n    };\n\n    const getQuestionMax = (question) => {\n      if (question.type === \"checkbox\") {\n        return Number(question.maxScore || Math.max(...question.options.map((option) => option.score)));\n      }\n\n      return Math.max(...question.options.map((option) => Number(option.score || 0)));\n    };\n\n    const getAnswerScore = (question, answer) => {\n      if (question.type === \"checkbox\") {\n        if (!Array.isArray(answer) || answer.length === 0) return 0;\n\n        const selected = question.options.filter((option) => answer.includes(option.value));\n\n        if (selected.some((option) => option.exclusive)) {\n          return Number(selected.find((option) => option.exclusive).score || 0);\n        }\n\n        const total = selected.reduce((sum, option) => sum + Number(option.score || 0), 0);\n        return Math.min(total, Number(question.maxScore || total));\n      }\n\n      const selected = getOption(question, answer);\n      return selected ? Number(selected.score || 0) : 0;\n    };\n\n    const getCategoryMaxScore = (category) => {\n      return category.questions.reduce((sum, question) => sum + getQuestionMax(question), 0);\n    };\n\n    const getAnsweredMaxScore = (category) => {\n      return category.questions.reduce((sum, question) => {\n        const answer = state.answers[category.id][question.id];\n        const answered = question.type === \"checkbox\" ? Array.isArray(answer) && answer.length > 0 : Boolean(answer);\n        return answered ? sum + getQuestionMax(question) : sum;\n      }, 0);\n    };\n\n    const getAnsweredCount = (category) => {\n      return category.questions.filter((question) => {\n        const answer = state.answers[category.id][question.id];\n\n        if (question.type === \"checkbox\") {\n          return Array.isArray(answer) && answer.length > 0;\n        }\n\n        return Boolean(answer);\n      }).length;\n    };\n\n    const getCategoryRawScore = (category) => {\n      return category.questions.reduce((sum, question) => {\n        return sum + getAnswerScore(question, state.answers[category.id][question.id]);\n      }, 0);\n    };\n\n    const getCategoryScore = (category) => {\n      const answeredMax = getAnsweredMaxScore(category);\n      const rawScore = getCategoryRawScore(category);\n\n      if (!answeredMax) return 0;\n\n      return Math.min(100, Math.round((rawScore \/ answeredMax) * 100));\n    };\n\n    const getRiskLevel = (score) => {\n      if (score >= 67) {\n        return {\n          label: \"High\",\n          color: \"var(--nxpbd-red)\",\n          message: \"Your answers show several high-risk signs. A professional inspection is strongly recommended.\"\n        };\n      }\n\n      if (score >= 34) {\n        return {\n          label: \"Medium\",\n          color: \"var(--nxpbd-orange)\",\n          message: \"Your answers show some risk factors. Preventive sealing, moisture control, and inspection would help.\"\n        };\n      }\n\n      return {\n        label: \"Low\",\n        color: \"var(--nxpbd-green)\",\n        message: \"Your answers suggest lower risk right now. Keep monitoring entry points, moisture, and pest activity.\"\n      };\n    };\n\n    const getSelectedFeedback = (question, answer) => {\n      if (question.type === \"checkbox\") {\n        if (!Array.isArray(answer) || answer.length === 0) return \"\";\n\n        const selected = question.options.filter((option) => answer.includes(option.value));\n\n        return selected.map((option) => {\n          return `<p><strong>${escapeHTML(option.label)}:<\/strong> ${escapeHTML(option.feedback)}<\/p>`;\n        }).join(\"\");\n      }\n\n      const option = getOption(question, answer);\n      if (!option) return \"\";\n\n      return `<p><strong>${escapeHTML(option.label)}:<\/strong> ${escapeHTML(option.feedback)}<\/p>`;\n    };\n\n    const getQuestionFactor = (question) => {\n      return QUESTION_FACTORS[question.id] || \"other\";\n    };\n\n    const getAnswerLabel = (question, answer) => {\n      if (question.type === \"checkbox\") {\n        if (!Array.isArray(answer) || answer.length === 0) {\n          return \"Not answered\";\n        }\n\n        return question.options\n          .filter((option) => answer.includes(option.value))\n          .map((option) => option.label)\n          .join(\", \");\n      }\n\n      const selected = getOption(question, answer);\n\n      return selected ? selected.label : \"Not answered\";\n    };\n\n    const getScoreDetails = (category) => {\n      return category.questions.map((question) => {\n        const answer = state.answers[category.id][question.id];\n        const max = getQuestionMax(question);\n        const score = getAnswerScore(question, answer);\n        const answered = question.type === \"checkbox\"\n          ? Array.isArray(answer) && answer.length > 0\n          : Boolean(answer);\n\n        const factor = getQuestionFactor(question);\n        const factorMeta = RISK_FACTOR_META[factor] || RISK_FACTOR_META.other;\n\n        return {\n          questionId: question.id,\n          questionTitle: question.title,\n          answerLabel: getAnswerLabel(question, answer),\n          factor,\n          factorLabel: factorMeta.label,\n          factorReason: factorMeta.reason,\n          score,\n          max,\n          answered,\n          percentage: max > 0 ? Math.round((score \/ max) * 100) : 0\n        };\n      });\n    };\n\n    const getFactorBreakdown = (category) => {\n      const details = getScoreDetails(category).filter((detail) => detail.answered);\n      const grouped = {};\n\n      details.forEach((detail) => {\n        if (!grouped[detail.factor]) {\n          grouped[detail.factor] = {\n            factor: detail.factor,\n            label: detail.factorLabel,\n            reason: detail.factorReason,\n            score: 0,\n            max: 0,\n            items: []\n          };\n        }\n\n        grouped[detail.factor].score += detail.score;\n        grouped[detail.factor].max += detail.max;\n\n        if (detail.score > 0) {\n          grouped[detail.factor].items.push(detail);\n        }\n      });\n\n      return Object.values(grouped)\n        .map((item) => ({\n          ...item,\n          percentage: item.max > 0 ? Math.round((item.score \/ item.max) * 100) : 0\n        }))\n        .sort((a, b) => {\n          if (b.score !== a.score) return b.score - a.score;\n          return b.percentage - a.percentage;\n        });\n    };\n\n    const getTopScoreDrivers = (category) => {\n      return getScoreDetails(category)\n        .filter((detail) => detail.answered && detail.score > 0)\n        .sort((a, b) => {\n          if (b.score !== a.score) return b.score - a.score;\n          return b.percentage - a.percentage;\n        })\n        .slice(0, 5);\n    };\n\n    const getLowRiskSignals = (category) => {\n      return getScoreDetails(category)\n        .filter((detail) => detail.answered && detail.score === 0 && detail.max > 0)\n        .slice(0, 5);\n    };\n\n    const getScoreReason = (category) => {\n      const score = getCategoryScore(category);\n      const risk = getRiskLevel(score);\n      const rawScore = getCategoryRawScore(category);\n      const answeredMaxScore = getAnsweredMaxScore(category);\n      const answered = getAnsweredCount(category);\n      const total = category.questions.length;\n      const breakdown = getFactorBreakdown(category).filter((item) => item.score > 0);\n\n      if (answered === 0) {\n        return \"No score explanation is available yet because no questions have been answered.\";\n      }\n\n      if (!breakdown.length) {\n        return `The score is ${score}\/100 because your selected answers did not add any major risk points. This currently places the property in the ${risk.label.toLowerCase()} risk range.`;\n      }\n\n      const topFactors = breakdown.slice(0, 3).map((item) => {\n        return `${item.label.toLowerCase()} (${item.score} pts)`;\n      }).join(\", \");\n\n      const provisionalText = answered < total\n        ? ` This is a provisional score based on ${answered} of ${total} answered questions.`\n        : \"\";\n\n      return `The score is ${score}\/100 because your answers added ${rawScore} risk points out of ${answeredMaxScore} possible points from the questions answered. The biggest contributors are ${topFactors}. This places the property in the ${risk.label.toLowerCase()} risk range.${provisionalText}`;\n    };\n\n    const renderFactorBreakdown = (category) => {\n      const breakdown = getFactorBreakdown(category);\n\n      if (!breakdown.length) {\n        return `<div class=\"nxpbd-empty\">Answer the questions above to generate a risk breakdown.<\/div>`;\n      }\n\n      return `\n        <div class=\"nxpbd-factor-grid\">\n          ${breakdown.map((item, index) => `\n            <div class=\"nxpbd-factor-card${index === 0 && item.score > 0 ? \" is-top\" : \"\"}\">\n              <div class=\"nxpbd-factor-head\">\n                <strong>${escapeHTML(item.label)}<\/strong>\n                <span>${item.score}\/${item.max} pts<\/span>\n              <\/div>\n              <p>${escapeHTML(item.reason)}<\/p>\n              <div class=\"nxpbd-factor-bar\" aria-hidden=\"true\">\n                <span style=\"--factor-width:${item.percentage}%\"><\/span>\n              <\/div>\n            <\/div>\n          `).join(\"\")}\n        <\/div>\n      `;\n    };\n\n    const buildSummaryText = (category) => {\n      const score = getCategoryScore(category);\n      const risk = getRiskLevel(score);\n      const rawScore = getCategoryRawScore(category);\n      const answeredMaxScore = getAnsweredMaxScore(category);\n      const maxScore = getCategoryMaxScore(category);\n      const answered = getAnsweredCount(category);\n      const breakdown = getFactorBreakdown(category);\n      const topDrivers = getTopScoreDrivers(category);\n      const lowRiskSignals = getLowRiskSignals(category);\n\n      let output = `Truly Nolen Georgia \u2014 Home Assessment\\n`;\n      output += `Category: ${category.name}\\n`;\n      output += `Risk Score: ${score}\/100 (${risk.label})\\n`;\n      output += `Selected Risk Points: ${rawScore}\/${answeredMaxScore}\\n`;\n      output += `Total Possible Category Points: ${maxScore}\\n`;\n      output += `Answered: ${answered}\/${category.questions.length}\\n\\n`;\n\n      output += `Why this score:\\n`;\n      output += `${getScoreReason(category)}\\n\\n`;\n\n      if (breakdown.length) {\n        output += `Risk breakdown:\\n`;\n        breakdown.forEach((item) => {\n          output += `- ${item.label}: ${item.score}\/${item.max} pts\\n`;\n        });\n        output += `\\n`;\n      }\n\n      if (topDrivers.length) {\n        output += `Top score drivers:\\n`;\n        topDrivers.forEach((item, index) => {\n          output += `${index + 1}. ${item.questionTitle}\\n`;\n          output += `   Answer: ${item.answerLabel}\\n`;\n          output += `   Points: ${item.score}\/${item.max}\\n`;\n          output += `   Reason: ${item.factorReason}\\n`;\n        });\n        output += `\\n`;\n      }\n\n      if (lowRiskSignals.length) {\n        output += `Lower-risk answers:\\n`;\n        lowRiskSignals.forEach((item) => {\n          output += `- ${item.questionTitle}: ${item.answerLabel}\\n`;\n        });\n        output += `\\n`;\n      }\n\n      output += `Contact: ${SCORECARD.phone} | ${SCORECARD.email}`;\n\n      return output;\n    };\n\n    const renderTabs = () => {\n      return SCORECARD.categories.map((category) => {\n        const score = getCategoryScore(category);\n        const answered = getAnsweredCount(category);\n        const activeClass = category.id === state.active ? \" is-active\" : \"\";\n\n        return `\n          <button class=\"nxpbd-tab${activeClass}\" type=\"button\" data-nxpbd-tab=\"${escapeHTML(category.id)}\">\n            <strong>${escapeHTML(category.name)}<\/strong>\n            <span>${answered}\/${category.questions.length} answered \u00b7 ${score}\/100<\/span>\n          <\/button>\n        `;\n      }).join(\"\");\n    };\n\n    const renderOption = (category, question, option) => {\n      const answer = state.answers[category.id][question.id];\n      const inputType = question.type === \"checkbox\" ? \"checkbox\" : \"radio\";\n      const name = `nxpbd-${category.id}-${question.id}`;\n      const selected = question.type === \"checkbox\"\n        ? Array.isArray(answer) && answer.includes(option.value)\n        : answer === option.value;\n\n      return `\n        <label class=\"nxpbd-option${selected ? \" is-selected\" : \"\"}\">\n          <input\n            type=\"${inputType}\"\n            name=\"${escapeHTML(name)}\"\n            value=\"${escapeHTML(option.value)}\"\n            data-nxpbd-category=\"${escapeHTML(category.id)}\"\n            data-nxpbd-question=\"${escapeHTML(question.id)}\"\n            ${option.exclusive ? 'data-nxpbd-exclusive=\"1\"' : \"\"}\n            ${selected ? \"checked\" : \"\"}\n          >\n          <span class=\"nxpbd-control\" aria-hidden=\"true\"><\/span>\n          <span>\n            <strong>${escapeHTML(option.label)}<\/strong>\n            ${option.hint ? `<small>${escapeHTML(option.hint)}<\/small>` : \"\"}\n          <\/span>\n          <span class=\"nxpbd-points\">${Number(option.score || 0) > 0 ? \"+\" + Number(option.score || 0) : \"0\"}<\/span>\n        <\/label>\n      `;\n    };\n\n    const renderQuestion = (category, question, index) => {\n      const answer = state.answers[category.id][question.id];\n      const feedback = getSelectedFeedback(question, answer);\n      const wideClass = question.options.length > 4 ? \" nxpbd-options--wide\" : \"\";\n\n      return `\n        <article class=\"nxpbd-question-card\">\n          <div class=\"nxpbd-question-top\">\n            <span class=\"nxpbd-question-number\">${index + 1}<\/span>\n            <div>\n              <h4 class=\"nxpbd-question-title\">${escapeHTML(question.title)}<\/h4>\n              ${question.help ? `<p class=\"nxpbd-question-help\">${escapeHTML(question.help)}<\/p>` : \"\"}\n            <\/div>\n          <\/div>\n\n          <div class=\"nxpbd-options${wideClass}\">\n            ${question.options.map((option) => renderOption(category, question, option)).join(\"\")}\n          <\/div>\n\n          ${feedback ? `<div class=\"nxpbd-feedback\">${feedback}<\/div>` : \"\"}\n        <\/article>\n      `;\n    };\n\n    const renderSummary = (category) => {\n      const score = getCategoryScore(category);\n      const risk = getRiskLevel(score);\n      const rawScore = getCategoryRawScore(category);\n      const answeredMaxScore = getAnsweredMaxScore(category);\n      const topDrivers = getTopScoreDrivers(category);\n      const lowRiskSignals = getLowRiskSignals(category);\n\n      const driverList = topDrivers.length\n        ? `\n          <ul class=\"nxpbd-driver-list\">\n            ${topDrivers.map((item) => `\n              <li class=\"nxpbd-driver-item\">\n                <span class=\"nxpbd-driver-points\">+${item.score}<\/span>\n                <span>\n                  <strong>${escapeHTML(item.questionTitle)}<\/strong>\n                  <span class=\"nxpbd-answer-pill\">Selected: ${escapeHTML(item.answerLabel)}<\/span>\n                  <p>\n                    This increased the score because it affects\n                    <strong>${escapeHTML(item.factorLabel.toLowerCase())}<\/strong>.\n                    ${escapeHTML(item.factorReason)}\n                  <\/p>\n                <\/span>\n              <\/li>\n            `).join(\"\")}\n          <\/ul>\n        `\n        : `<div class=\"nxpbd-empty\">No major score drivers yet. Answer more questions to see what is affecting the score.<\/div>`;\n\n      const goodSignals = lowRiskSignals.length\n        ? `\n          <h4 class=\"nxpbd-summary-title\">Answers That Helped Keep the Score Lower<\/h4>\n          <ul class=\"nxpbd-good-signals\">\n            ${lowRiskSignals.map((item) => `\n              <li>\n                <strong>${escapeHTML(item.questionTitle)}<\/strong><br>\n                Selected: ${escapeHTML(item.answerLabel)}\n              <\/li>\n            `).join(\"\")}\n          <\/ul>\n        `\n        : \"\";\n\n      return `\n        <section class=\"nxpbd-summary-panel\">\n          <div class=\"nxpbd-summary-head\">\n            <div>\n              <h3>${escapeHTML(category.name)} Scorecard Result<\/h3>\n              <p>${escapeHTML(risk.message)}<\/p>\n            <\/div>\n            <a class=\"nxpbd-btn nxpbd-btn--primary\" href=\"tel:${escapeHTML(SCORECARD.tel)}\">\n              Call ${escapeHTML(SCORECARD.phone)}\n            <\/a>\n          <\/div>\n\n          <div class=\"nxpbd-score-explain\">\n            <div class=\"nxpbd-score-formula\">\n              <span>Score Calculation<\/span>\n              <strong>${rawScore}\/${answeredMaxScore || 0} selected risk points = ${score}\/100 ${escapeHTML(risk.label)} Risk<\/strong>\n              <p>${escapeHTML(getScoreReason(category))}<\/p>\n            <\/div>\n          <\/div>\n\n          <h4 class=\"nxpbd-summary-title\">Risk Breakdown<\/h4>\n          ${renderFactorBreakdown(category)}\n\n          <h4 class=\"nxpbd-summary-title\">Top Reasons For This Score<\/h4>\n          ${driverList}\n\n          ${goodSignals}\n\n          <div class=\"nxpbd-footer-actions\">\n            <a class=\"nxpbd-btn nxpbd-btn--secondary\" href=\"${escapeHTML(SCORECARD.contactUrl)}\">\n              Book Free Inspection\n            <\/a>\n            <a\n              class=\"nxpbd-btn nxpbd-btn--ghost\"\n              href=\"mailto:${escapeHTML(SCORECARD.email)}?subject=${encodeURIComponent(\"Home Scorecard Result\")}&body=${encodeURIComponent(buildSummaryText(category))}\"\n            >\n              Email Summary\n            <\/a>\n            <button class=\"nxpbd-btn nxpbd-btn--ghost\" type=\"button\" data-nxpbd-copy=\"1\">\n              Copy Summary\n            <\/button>\n            <button class=\"nxpbd-btn nxpbd-btn--ghost\" type=\"button\" data-nxpbd-reset=\"1\">\n              Reset Category\n            <\/button>\n          <\/div>\n        <\/section>\n      `;\n    };\n\n    const render = () => {\n      const category = getCategory(state.active);\n      const score = getCategoryScore(category);\n      const risk = getRiskLevel(score);\n      const answered = getAnsweredCount(category);\n      const progress = Math.round((answered \/ category.questions.length) * 100);\n\n      root.innerHTML = `\n        <div class=\"nxpbd-scorecard\">\n          <div class=\"nxpbd-scorecard__hero\">\n            <div class=\"nxpbd-hero-card\">\n              <span class=\"nxpbd-eyebrow\">Home Assessment \u00b7 Georgia<\/span>\n              <h1>See your home\u2019s <span>pest risk<\/span> in minutes.<\/h1>\n              <p class=\"nxpbd-lead\">\n                Answer simple property questions to calculate a live risk score for pests, termites, and rodents.\n                The final result explains why the score is Low, Medium, or High.\n              <\/p>\n              <div class=\"nxpbd-hero-actions\">\n                <a class=\"nxpbd-btn nxpbd-btn--primary\" href=\"${escapeHTML(SCORECARD.contactUrl)}\">Get Free Inspection<\/a>\n                <a class=\"nxpbd-btn nxpbd-btn--secondary\" href=\"tel:${escapeHTML(SCORECARD.tel)}\">Call ${escapeHTML(SCORECARD.phone)}<\/a>\n              <\/div>\n            <\/div>\n\n            <aside class=\"nxpbd-risk-panel\" aria-live=\"polite\">\n              <div class=\"nxpbd-risk-title\">\n                <div>\n                  <strong>Risk Indicator<\/strong>\n                  <span>${escapeHTML(category.name)}<\/span>\n                <\/div>\n                <span>${answered}\/${category.questions.length}<\/span>\n              <\/div>\n\n              <div class=\"nxpbd-meter\" style=\"--p:${score}; --risk-color:${risk.color};\">\n                <div class=\"nxpbd-meter__inner\">\n                  <span class=\"nxpbd-meter__score\">${score}<\/span>\n                  <span class=\"nxpbd-meter__label\">${escapeHTML(risk.label)}<\/span>\n                <\/div>\n              <\/div>\n\n              <div class=\"nxpbd-risk-scale\">\n                <div class=\"nxpbd-scale-row\">\n                  <span>0<\/span>\n                  <span>Low<\/span>\n                  <span>Medium<\/span>\n                  <span>High<\/span>\n                  <span>100<\/span>\n                <\/div>\n                <div class=\"nxpbd-scale-track\" aria-hidden=\"true\"><span><\/span><span><\/span><span><\/span><\/div>\n              <\/div>\n\n              <div class=\"nxpbd-progress\" title=\"${progress}% complete\">\n                <span style=\"--done:${progress}%\"><\/span>\n              <\/div>\n\n              <p class=\"nxpbd-meta\">${escapeHTML(risk.message)}<\/p>\n            <\/aside>\n          <\/div>\n\n          <div class=\"nxpbd-layout\">\n            <nav class=\"nxpbd-tabs\" aria-label=\"Scorecard categories\">\n              ${renderTabs()}\n            <\/nav>\n\n            <main class=\"nxpbd-content\">\n              <header class=\"nxpbd-category-head\">\n                <div>\n                  <span class=\"nxpbd-eyebrow\">${escapeHTML(category.kicker)}<\/span>\n                  <h3>${escapeHTML(category.name)}<\/h3>\n                  <p>${escapeHTML(category.description)}<\/p>\n                <\/div>\n                <div class=\"nxpbd-mini-score\">\n                  <strong>${score}<\/strong>\n                  <span>${escapeHTML(risk.label)} Risk<\/span>\n                <\/div>\n              <\/header>\n\n              ${category.questions.map((question, index) => renderQuestion(category, question, index)).join(\"\")}\n\n              ${renderSummary(category)}\n            <\/main>\n          <\/div>\n        <\/div>\n      `;\n    };\n\n    root.addEventListener(\"click\", (event) => {\n      const tab = event.target.closest(\"[data-nxpbd-tab]\");\n      if (tab) {\n        state.active = tab.getAttribute(\"data-nxpbd-tab\");\n        render();\n        return;\n      }\n\n      const reset = event.target.closest(\"[data-nxpbd-reset]\");\n      if (reset) {\n        state.answers[state.active] = {};\n        render();\n        return;\n      }\n\n      const copy = event.target.closest(\"[data-nxpbd-copy]\");\n      if (copy) {\n        const category = getCategory(state.active);\n        const text = buildSummaryText(category);\n\n        if (navigator.clipboard && navigator.clipboard.writeText) {\n          navigator.clipboard.writeText(text).then(() => {\n            copy.textContent = \"Copied\";\n            setTimeout(() => render(), 900);\n          }).catch(() => {\n            window.prompt(\"Copy your scorecard summary:\", text);\n          });\n        } else {\n          window.prompt(\"Copy your scorecard summary:\", text);\n        }\n      }\n    });\n\n    root.addEventListener(\"change\", (event) => {\n      const input = event.target;\n      if (!input.matches(\"input[data-nxpbd-category][data-nxpbd-question]\")) return;\n\n      const categoryId = input.getAttribute(\"data-nxpbd-category\");\n      const questionId = input.getAttribute(\"data-nxpbd-question\");\n      const category = getCategory(categoryId);\n      if (!category) return;\n\n      const question = category.questions.find((item) => item.id === questionId);\n      if (!question) return;\n\n      if (question.type === \"checkbox\") {\n        const checkedInputs = Array.from(root.querySelectorAll(\n          `input[data-nxpbd-category=\"${categoryId}\"][data-nxpbd-question=\"${questionId}\"]:checked`\n        ));\n\n        if (input.hasAttribute(\"data-nxpbd-exclusive\") && input.checked) {\n          state.answers[categoryId][questionId] = [input.value];\n        } else {\n          state.answers[categoryId][questionId] = checkedInputs\n            .filter((checkedInput) => !checkedInput.hasAttribute(\"data-nxpbd-exclusive\"))\n            .map((checkedInput) => checkedInput.value);\n        }\n\n        if (!state.answers[categoryId][questionId].length) {\n          delete state.answers[categoryId][questionId];\n        }\n      } else {\n        state.answers[categoryId][questionId] = input.value;\n      }\n\n      render();\n    });\n\n    render();\n  };\n\n  if (document.readyState === \"loading\") {\n    document.addEventListener(\"DOMContentLoaded\", initScorecard);\n  } else {\n    initScorecard();\n  }\n})();\n<\/script>\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Home Assessment \u00b7 Georgia Find out your home&#8217;s pest risk in minutes. Answer simple questions and get a live assessment of your pest, termite, and rodent risk. The final result explains why the risk is low, medium, or high. Request a Free Inspection 577 73 88 33 Risk Indicator Pest Control 0\/13 0 Low 0 [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-1217","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Pest Risk Calculator | Truly Nolen<\/title>\n<meta name=\"description\" content=\"Assess the risk of pests, rodents, and termites spreading in your home with a free online calculator and get recommendations.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/trulynolen.ge\/en\/risk-calculator\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Pest Risk Calculator | Truly Nolen\" \/>\n<meta property=\"og:description\" content=\"Assess the risk of pests, rodents, and termites spreading in your home with a free online calculator and get recommendations.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/trulynolen.ge\/en\/risk-calculator\/\" \/>\n<meta property=\"og:site_name\" content=\"Truly Nolen Georgia\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-08T18:25:34+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/trulynolen.ge\/wp-content\/uploads\/2026\/08\/homepage-image-1024x768.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"768\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/trulynolen.ge\\\/en\\\/risk-calculator\\\/\",\"url\":\"https:\\\/\\\/trulynolen.ge\\\/en\\\/risk-calculator\\\/\",\"name\":\"Pest Risk Calculator | Truly Nolen\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/trulynolen.ge\\\/en\\\/#website\"},\"datePublished\":\"2026-07-19T19:31:07+00:00\",\"dateModified\":\"2026-09-08T18:25:34+00:00\",\"description\":\"Assess the risk of pests, rodents, and termites spreading in your home with a free online calculator and get recommendations.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/trulynolen.ge\\\/en\\\/risk-calculator\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/trulynolen.ge\\\/en\\\/risk-calculator\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/trulynolen.ge\\\/en\\\/risk-calculator\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/trulynolen.ge\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Risk Calculator\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/trulynolen.ge\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/trulynolen.ge\\\/en\\\/\",\"name\":\"Truly Nolen Georgia\",\"description\":\"Professional pest control in Georgia\",\"publisher\":{\"@id\":\"https:\\\/\\\/trulynolen.ge\\\/en\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/trulynolen.ge\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/trulynolen.ge\\\/en\\\/#organization\",\"name\":\"Truly Nolen Georgia\",\"url\":\"https:\\\/\\\/trulynolen.ge\\\/en\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/trulynolen.ge\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/trulynolen.ge\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/Long-Logo-pest-control-2.png\",\"contentUrl\":\"https:\\\/\\\/trulynolen.ge\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/Long-Logo-pest-control-2.png\",\"width\":291,\"height\":188,\"caption\":\"Truly Nolen Georgia\"},\"image\":{\"@id\":\"https:\\\/\\\/trulynolen.ge\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.instagram.com\\\/trulynolen.georgia\\\/\",\"https:\\\/\\\/www.youtube.com\\\/@TheTrulyvision\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/truly-nolen-georgia\\\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Pest Risk Calculator | Truly Nolen","description":"Assess the risk of pests, rodents, and termites spreading in your home with a free online calculator and get recommendations.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/trulynolen.ge\/en\/risk-calculator\/","og_locale":"en_US","og_type":"article","og_title":"Pest Risk Calculator | Truly Nolen","og_description":"Assess the risk of pests, rodents, and termites spreading in your home with a free online calculator and get recommendations.","og_url":"https:\/\/trulynolen.ge\/en\/risk-calculator\/","og_site_name":"Truly Nolen Georgia","article_modified_time":"2026-09-08T18:25:34+00:00","og_image":[{"width":1024,"height":768,"url":"https:\/\/trulynolen.ge\/wp-content\/uploads\/2026\/08\/homepage-image-1024x768.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/trulynolen.ge\/en\/risk-calculator\/","url":"https:\/\/trulynolen.ge\/en\/risk-calculator\/","name":"Pest Risk Calculator | Truly Nolen","isPartOf":{"@id":"https:\/\/trulynolen.ge\/en\/#website"},"datePublished":"2026-07-19T19:31:07+00:00","dateModified":"2026-09-08T18:25:34+00:00","description":"Assess the risk of pests, rodents, and termites spreading in your home with a free online calculator and get recommendations.","breadcrumb":{"@id":"https:\/\/trulynolen.ge\/en\/risk-calculator\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/trulynolen.ge\/en\/risk-calculator\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/trulynolen.ge\/en\/risk-calculator\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/trulynolen.ge\/en\/"},{"@type":"ListItem","position":2,"name":"Risk Calculator"}]},{"@type":"WebSite","@id":"https:\/\/trulynolen.ge\/en\/#website","url":"https:\/\/trulynolen.ge\/en\/","name":"Truly Nolen Georgia","description":"Professional pest control in Georgia","publisher":{"@id":"https:\/\/trulynolen.ge\/en\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/trulynolen.ge\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/trulynolen.ge\/en\/#organization","name":"Truly Nolen Georgia","url":"https:\/\/trulynolen.ge\/en\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/trulynolen.ge\/en\/#\/schema\/logo\/image\/","url":"https:\/\/trulynolen.ge\/wp-content\/uploads\/2026\/07\/Long-Logo-pest-control-2.png","contentUrl":"https:\/\/trulynolen.ge\/wp-content\/uploads\/2026\/07\/Long-Logo-pest-control-2.png","width":291,"height":188,"caption":"Truly Nolen Georgia"},"image":{"@id":"https:\/\/trulynolen.ge\/en\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.instagram.com\/trulynolen.georgia\/","https:\/\/www.youtube.com\/@TheTrulyvision","https:\/\/www.linkedin.com\/company\/truly-nolen-georgia\/"]}]}},"_links":{"self":[{"href":"https:\/\/trulynolen.ge\/en\/wp-json\/wp\/v2\/pages\/1217","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/trulynolen.ge\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/trulynolen.ge\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/trulynolen.ge\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/trulynolen.ge\/en\/wp-json\/wp\/v2\/comments?post=1217"}],"version-history":[{"count":3,"href":"https:\/\/trulynolen.ge\/en\/wp-json\/wp\/v2\/pages\/1217\/revisions"}],"predecessor-version":[{"id":1413,"href":"https:\/\/trulynolen.ge\/en\/wp-json\/wp\/v2\/pages\/1217\/revisions\/1413"}],"wp:attachment":[{"href":"https:\/\/trulynolen.ge\/en\/wp-json\/wp\/v2\/media?parent=1217"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}