{"id":1291,"date":"2026-03-18T02:33:40","date_gmt":"2026-03-18T02:33:40","guid":{"rendered":"https:\/\/gqlamp.com\/?page_id=1291"},"modified":"2026-03-18T02:37:59","modified_gmt":"2026-03-18T02:37:59","slug":"wattage-selector","status":"publish","type":"page","link":"https:\/\/gqlamp.com\/pt\/led-street-lights\/wattage-selector\/","title":{"rendered":"Seletor de pot\u00eancia"},"content":{"rendered":"\n<div class=\"wp-block-stackable-columns alignfull stk-block-columns stk-block stk-5ccb3c1\" data-block-id=\"5ccb3c1\"><div class=\"stk-row stk-inner-blocks stk-block-content stk-content-align stk-5ccb3c1-column alignfull\">\n<div class=\"wp-block-stackable-column stk-block-column stk-column stk-block stk-6d14013\" data-v=\"4\" data-block-id=\"6d14013\"><div class=\"stk-column-wrapper stk-block-column__content stk-container stk-6d14013-container stk--no-background stk--no-padding\"><div class=\"stk-block-content stk-inner-blocks stk-6d14013-inner-blocks\">\n<!-- LED Street Light Wattage Selector v1 \u2014 Guangqi Lighting -->\n<!-- WordPress-embeddable single HTML file. Paste into an HTML block. -->\n<section id=\"bx-wattage-selector-v1\">\n\n<style>\n\/* ============================================================\n   SCOPED STYLES \u2014 #bx-wattage-selector-v1\n   ============================================================ *\/\n#bx-wattage-selector-v1 {\n  --bx-primary: #183090;\n  --bx-accent: #009048;\n  --bx-red: #D81818;\n  --bx-black: #303030;\n  --bx-light: #F4F6FB;\n  --bx-border: #D0D5E0;\n  --bx-radius: 8px;\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: 0 16px;\n  font-family: inherit;\n  color: var(--bx-black);\n  line-height: 1.6;\n  box-sizing: border-box;\n}\n#bx-wattage-selector-v1 *, #bx-wattage-selector-v1 *::before, #bx-wattage-selector-v1 *::after {\n  box-sizing: border-box;\n}\n\n\/* ---- Typography ---- *\/\n#bx-wattage-selector-v1 h2,\n#bx-wattage-selector-v1 h3,\n#bx-wattage-selector-v1 h4 {\n  font-family: inherit !important;\n  color: var(--bx-primary);\n  margin-top: 0;\n}\n#bx-wattage-selector-v1 h2 {\n  margin-bottom: 6px;\n}\n#bx-wattage-selector-v1 .bx-subtitle {\n  color: #5A6170;\n  margin: 0 0 28px 0;\n  font-size: 1.05em;\n}\n#bx-wattage-selector-v1 .bx-mono {\n  font-family: 'IBM Plex Mono', monospace;\n}\n\n\/* ---- Form grid ---- *\/\n#bx-wattage-selector-v1 .bx-form-grid {\n  display: grid;\n  grid-template-columns: 1fr 1fr;\n  gap: 20px 28px;\n  margin-bottom: 24px;\n}\n#bx-wattage-selector-v1 .bx-field {\n  display: flex;\n  flex-direction: column;\n}\n#bx-wattage-selector-v1 .bx-field label {\n  font-weight: 600;\n  margin-bottom: 6px;\n  font-size: 0.94em;\n  color: var(--bx-black);\n}\n#bx-wattage-selector-v1 .bx-field label .bx-label-hint {\n  font-weight: 400;\n  color: #7A8190;\n  font-size: 0.88em;\n}\n#bx-wattage-selector-v1 select {\n  appearance: none;\n  -webkit-appearance: none;\n  width: 100%;\n  padding: 10px 38px 10px 14px;\n  font-size: 1em;\n  font-family: inherit;\n  color: var(--bx-black);\n  background-color: #FFFFFF;\n  border: 1.5px solid var(--bx-border);\n  border-radius: var(--bx-radius);\n  cursor: pointer;\n  background-image: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23303030' stroke-width='1.8' fill='none' stroke-linecap='round'\/%3E%3C\/svg%3E\");\n  background-repeat: no-repeat;\n  background-position: right 14px center;\n  transition: border-color 0.2s;\n}\n#bx-wattage-selector-v1 select:focus {\n  outline: none;\n  border-color: var(--bx-primary);\n  box-shadow: 0 0 0 3px rgba(24,48,144,0.12);\n}\n#bx-wattage-selector-v1 select option {\n  color: #000018;\n  background: #FFFFFF;\n}\n\n\/* ---- Buttons ---- *\/\n#bx-wattage-selector-v1 .bx-btn-row {\n  display: flex;\n  gap: 14px;\n  flex-wrap: wrap;\n  margin-bottom: 8px;\n}\n#bx-wattage-selector-v1 .bx-btn-primary {\n  display: inline-flex;\n  align-items: center;\n  gap: 8px;\n  padding: 12px 32px;\n  font-size: 1.05em;\n  font-weight: 700;\n  font-family: inherit;\n  color: #FFFFFF;\n  background: var(--bx-primary);\n  border: none;\n  border-radius: var(--bx-radius);\n  cursor: pointer;\n  transition: background 0.2s, transform 0.1s;\n}\n#bx-wattage-selector-v1 .bx-btn-primary:hover {\n  background: #122470;\n}\n#bx-wattage-selector-v1 .bx-btn-primary:active {\n  transform: scale(0.97);\n}\n#bx-wattage-selector-v1 .bx-btn-reset {\n  display: inline-flex;\n  align-items: center;\n  gap: 6px;\n  padding: 12px 24px;\n  font-size: 0.97em;\n  font-weight: 600;\n  font-family: inherit;\n  color: var(--bx-black);\n  background: var(--bx-light);\n  border: 1.5px solid var(--bx-border);\n  border-radius: var(--bx-radius);\n  cursor: pointer;\n  transition: background 0.2s;\n}\n#bx-wattage-selector-v1 .bx-btn-reset:hover {\n  background: #E6E9F0;\n}\n\n\/* ---- Result panel ---- *\/\n#bx-wattage-selector-v1 .bx-result-panel {\n  display: none;\n  margin-top: 28px;\n  border: 2px solid var(--bx-primary);\n  border-radius: 12px;\n  overflow: hidden;\n  background: #FFFFFF;\n}\n#bx-wattage-selector-v1 .bx-result-panel.bx-visible {\n  display: block;\n  animation: bxFadeIn 0.35s ease;\n}\n@keyframes bxFadeIn {\n  from { opacity: 0; transform: translateY(10px); }\n  to   { opacity: 1; transform: translateY(0); }\n}\n#bx-wattage-selector-v1 .bx-result-header {\n  background: var(--bx-primary);\n  color: #FFFFFF;\n  padding: 18px 24px;\n  display: flex;\n  align-items: center;\n  gap: 10px;\n}\n#bx-wattage-selector-v1 .bx-result-header h3 {\n  color: #FFFFFF;\n  margin: 0;\n  font-size: 1.15em;\n}\n#bx-wattage-selector-v1 .bx-result-body {\n  padding: 24px;\n}\n\n\/* Wattage highlight *\/\n#bx-wattage-selector-v1 .bx-wattage-highlight {\n  text-align: center;\n  padding: 18px 12px 22px;\n  margin-bottom: 22px;\n  background: var(--bx-light);\n  border-radius: var(--bx-radius);\n}\n#bx-wattage-selector-v1 .bx-wattage-highlight .bx-label {\n  font-size: 0.85em;\n  text-transform: uppercase;\n  letter-spacing: 0.06em;\n  color: #5A6170;\n  margin-bottom: 4px;\n}\n#bx-wattage-selector-v1 .bx-wattage-highlight .bx-value {\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 2.2em;\n  font-weight: 700;\n  color: var(--bx-primary);\n  line-height: 1.2;\n}\n\n\/* Fit badge *\/\n#bx-wattage-selector-v1 .bx-fit-badge {\n  display: inline-flex;\n  align-items: center;\n  gap: 6px;\n  padding: 5px 14px;\n  border-radius: 40px;\n  font-size: 0.88em;\n  font-weight: 700;\n  margin-top: 8px;\n}\n#bx-wattage-selector-v1 .bx-fit-excellent {\n  background: #E6F5ED;\n  color: var(--bx-accent);\n}\n#bx-wattage-selector-v1 .bx-fit-good {\n  background: #E8EDFB;\n  color: var(--bx-primary);\n}\n#bx-wattage-selector-v1 .bx-fit-tight {\n  background: #FDEAEA;\n  color: var(--bx-red);\n}\n\n\/* Product cards *\/\n#bx-wattage-selector-v1 .bx-products {\n  display: grid;\n  grid-template-columns: 1fr;\n  gap: 16px;\n  margin-bottom: 22px;\n}\n#bx-wattage-selector-v1 .bx-product-card {\n  border: 1.5px solid var(--bx-border);\n  border-radius: var(--bx-radius);\n  padding: 18px 20px;\n  background: #FFFFFF;\n  transition: border-color 0.2s, box-shadow 0.2s;\n}\n#bx-wattage-selector-v1 .bx-product-card:hover {\n  border-color: var(--bx-primary);\n  box-shadow: 0 2px 12px rgba(24,48,144,0.08);\n}\n#bx-wattage-selector-v1 .bx-product-card .bx-model-name {\n  font-weight: 700;\n  font-size: 1.06em;\n  color: var(--bx-primary);\n  margin-bottom: 10px;\n}\n#bx-wattage-selector-v1 .bx-spec-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));\n  gap: 8px 18px;\n}\n#bx-wattage-selector-v1 .bx-spec-item {\n  display: flex;\n  flex-direction: column;\n}\n#bx-wattage-selector-v1 .bx-spec-item .bx-spec-label {\n  font-size: 0.78em;\n  text-transform: uppercase;\n  letter-spacing: 0.04em;\n  color: #7A8190;\n}\n#bx-wattage-selector-v1 .bx-spec-item .bx-spec-val {\n  font-family: 'IBM Plex Mono', monospace;\n  font-weight: 600;\n  font-size: 0.97em;\n  color: var(--bx-black);\n}\n\n\/* CTA inside result *\/\n#bx-wattage-selector-v1 .bx-cta-row {\n  text-align: center;\n  padding-top: 10px;\n  border-top: 1px solid var(--bx-border);\n  margin-top: 4px;\n}\n#bx-wattage-selector-v1 .bx-btn-cta {\n  display: inline-flex;\n  align-items: center;\n  gap: 8px;\n  padding: 14px 36px;\n  font-size: 1.08em;\n  font-weight: 700;\n  font-family: inherit;\n  color: #FFFFFF;\n  background: var(--bx-accent);\n  border: none;\n  border-radius: var(--bx-radius);\n  cursor: pointer;\n  transition: background 0.2s, transform 0.1s;\n}\n#bx-wattage-selector-v1 .bx-btn-cta:hover {\n  background: #007A3A;\n}\n#bx-wattage-selector-v1 .bx-btn-cta:active {\n  transform: scale(0.97);\n}\n#bx-wattage-selector-v1 .bx-cta-hint {\n  font-size: 0.84em;\n  color: #7A8190;\n  margin-top: 8px;\n}\n\n\/* Validation error *\/\n#bx-wattage-selector-v1 .bx-error-msg {\n  display: none;\n  color: var(--bx-red);\n  font-size: 0.92em;\n  font-weight: 600;\n  margin-bottom: 14px;\n  padding: 10px 16px;\n  background: #FDF0F0;\n  border-radius: var(--bx-radius);\n  border-left: 4px solid var(--bx-red);\n}\n#bx-wattage-selector-v1 .bx-error-msg.bx-visible {\n  display: block;\n}\n\n\/* ---- Responsive ---- *\/\n@media (max-width: 860px) {\n  #bx-wattage-selector-v1 .bx-form-grid {\n    grid-template-columns: 1fr;\n    gap: 16px;\n  }\n  #bx-wattage-selector-v1 .bx-wattage-highlight .bx-value {\n    font-size: 1.7em;\n  }\n  #bx-wattage-selector-v1 .bx-spec-grid {\n    grid-template-columns: 1fr 1fr;\n  }\n  #bx-wattage-selector-v1 .bx-result-body {\n    padding: 18px 16px;\n  }\n  #bx-wattage-selector-v1 .bx-result-header {\n    padding: 14px 16px;\n  }\n}\n<\/style>\n\n<!-- ============================================================\n     MARKUP\n     ============================================================ -->\n<h2>LED Street Light Wattage Selection Guide<\/h2>\n<p class=\"bx-subtitle\">Answer four questions about your project and we will recommend the optimal Guangqi LED street light wattage and model for your application.<\/p>\n\n<div class=\"bx-form-grid\">\n  <!-- Road Type -->\n  <div class=\"bx-field\">\n    <label for=\"bx-road-type\">Road Type <span class=\"bx-label-hint\">(sets lux target)<\/span><\/label>\n    <select id=\"bx-road-type\">\n      <option value=\"\" disabled selected>Select road type&#8230;<\/option>\n      <option value=\"residential\">Residential (6 &ndash; 10 lux)<\/option>\n      <option value=\"collector\">Collector (10 &ndash; 15 lux)<\/option>\n      <option value=\"arterial\">Arterial \/ Highway (15 &ndash; 25 lux)<\/option>\n      <option value=\"parking\">Parking Lot (20 &ndash; 50 lux)<\/option>\n      <option value=\"pedestrian\">Pedestrian \/ Park (5 &ndash; 10 lux)<\/option>\n    <\/select>\n  <\/div>\n\n  <!-- Road Width -->\n  <div class=\"bx-field\">\n    <label for=\"bx-road-width\">Road Width<\/label>\n    <select id=\"bx-road-width\">\n      <option value=\"\" disabled selected>Select road width&#8230;<\/option>\n      <option value=\"6\">6 m<\/option>\n      <option value=\"8\">8 m<\/option>\n      <option value=\"10\">10 m<\/option>\n      <option value=\"12\">12 m<\/option>\n      <option value=\"15\">15 m+<\/option>\n    <\/select>\n  <\/div>\n\n  <!-- Mounting Height -->\n  <div class=\"bx-field\">\n    <label for=\"bx-mount-height\">Mounting Height<\/label>\n    <select id=\"bx-mount-height\">\n      <option value=\"\" disabled selected>Select mounting height&#8230;<\/option>\n      <option value=\"6\">6 m<\/option>\n      <option value=\"8\">8 m<\/option>\n      <option value=\"10\">10 m<\/option>\n      <option value=\"12\">12 m<\/option>\n    <\/select>\n  <\/div>\n\n  <!-- Power Source -->\n  <div class=\"bx-field\">\n    <label for=\"bx-power-source\">Power Source<\/label>\n    <select id=\"bx-power-source\">\n      <option value=\"\" disabled selected>Select power source&#8230;<\/option>\n      <option value=\"solar\">Solar<\/option>\n      <option value=\"grid\">Grid-Tied<\/option>\n    <\/select>\n  <\/div>\n<\/div>\n\n<!-- Error message -->\n<div class=\"bx-error-msg\" id=\"bx-error-msg\"><\/div>\n\n<!-- Action buttons -->\n<div class=\"bx-btn-row\">\n  <button type=\"button\" class=\"bx-btn-primary\" id=\"bx-btn-calculate\">\n    <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"11\" cy=\"11\" r=\"8\"\/><line x1=\"21\" y1=\"21\" x2=\"16.65\" y2=\"16.65\"\/><\/svg>\n    Find My Wattage\n  <\/button>\n  <button type=\"button\" class=\"bx-btn-reset\" id=\"bx-btn-reset\">\n    <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"1 4 1 10 7 10\"\/><path d=\"M3.51 15a9 9 0 1 0 2.13-9.36L1 10\"\/><\/svg>\n    Reset\n  <\/button>\n<\/div>\n\n<!-- Result Panel -->\n<div class=\"bx-result-panel\" id=\"bx-result-panel\">\n  <div class=\"bx-result-header\">\n    <svg width=\"22\" height=\"22\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M9 18h6\"\/><path d=\"M10 22h4\"\/><path d=\"M12 2a7 7 0 0 1 4 12.9V17H8v-2.1A7 7 0 0 1 12 2z\"\/><\/svg>\n    <h3>Your Recommended Configuration<\/h3>\n  <\/div>\n  <div class=\"bx-result-body\">\n    <!-- Wattage range -->\n    <div class=\"bx-wattage-highlight\">\n      <div class=\"bx-label\">Recommended Wattage Range<\/div>\n      <div class=\"bx-value\" id=\"bx-wattage-range\"><\/div>\n      <div id=\"bx-fit-badge-wrap\"><\/div>\n    <\/div>\n\n    <!-- Matched products -->\n    <h4 style=\"margin-bottom:12px;\">Matching Guangqi Models<\/h4>\n    <div class=\"bx-products\" id=\"bx-products\"><\/div>\n\n    <!-- CTA -->\n    <div class=\"bx-cta-row\">\n      <button type=\"button\" class=\"bx-btn-cta\" id=\"bx-btn-cta\">\n        <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z\"\/><polyline points=\"22,6 12,13 2,6\"\/><\/svg>\n        Request Photometric Layout\n      <\/button>\n      <p class=\"bx-cta-hint\">Free IES file + lighting simulation for your exact road geometry<\/p>\n    <\/div>\n  <\/div>\n<\/div>\n\n<!-- ============================================================\n     JAVASCRIPT \u2014 IIFE scoped\n     ============================================================ -->\n<script>\n(function() {\n  \"use strict\";\n\n  \/* ---- Product database ---- *\/\n  var PRODUCTS = {\n    \"GQ-STSL06\": {\n      name: \"GQ-STSL06\",\n      wattRange: [20, 35],\n      lmw: \"170\",\n      battery: \"LiFePO4 240Wh\",\n      ip: \"IP66\",\n      power: \"solar\",\n      note: \"Integrated solar, ideal for pedestrian paths and parks\"\n    },\n    \"GQ-STSL09\": {\n      name: \"GQ-STSL09\",\n      wattRange: [50, 100],\n      lmw: \"180\",\n      battery: \"LiFePO4 640Wh\",\n      ip: \"IP66\",\n      power: \"solar\",\n      note: \"All-in-one solar, residential and side streets\"\n    },\n    \"GQ-TKJ-A-100W\": {\n      name: \"GQ-TKJ-A-100W\",\n      wattRange: [50, 100],\n      lmw: \"190\",\n      battery: \"N\/A\",\n      ip: \"IP66\",\n      power: \"grid\",\n      note: \"High-efficiency grid fixture for residential roads\"\n    },\n    \"GQ-TKJ-A-200W\": {\n      name: \"GQ-TKJ-A-200W\",\n      wattRange: [100, 200],\n      lmw: \"190\",\n      battery: \"N\/A\",\n      ip: \"IP66\",\n      power: \"grid\",\n      note: \"Grid fixture suited for collector roads\"\n    },\n    \"GQ-TKJ-B-200W\": {\n      name: \"GQ-TKJ-B-200W\",\n      wattRange: [100, 200],\n      lmw: \"185\",\n      battery: \"N\/A\",\n      ip: \"IP66\",\n      power: \"grid\",\n      note: \"Heavy-duty housing for collector and industrial roads\"\n    },\n    \"GQ-TKJ-B-300W\": {\n      name: \"GQ-TKJ-B-300W\",\n      wattRange: [200, 300],\n      lmw: \"185\",\n      battery: \"N\/A\",\n      ip: \"IP66\",\n      power: \"grid\",\n      note: \"High-output grid fixture for arterial roads and parking\"\n    },\n    \"GQ-TKJ-B-400W\": {\n      name: \"GQ-TKJ-B-400W\",\n      wattRange: [300, 400],\n      lmw: \"180\",\n      battery: \"N\/A\",\n      ip: \"IP66\",\n      power: \"grid\",\n      note: \"Maximum-area coverage for arterial roads and large parking lots\"\n    },\n    \"GQ-TKJ-B-500W\": {\n      name: \"GQ-TKJ-B-500W\",\n      wattRange: [400, 500],\n      lmw: \"175\",\n      battery: \"N\/A\",\n      ip: \"IP66\",\n      power: \"grid\",\n      note: \"Flagship output for multi-lane highways\"\n    }\n  };\n\n  \/* ---- Lux targets by road type ---- *\/\n  var LUX_MAP = {\n    residential:  { min: 6,  max: 10, label: \"Residential\" },\n    collector:    { min: 10, max: 15, label: \"Collector\" },\n    arterial:     { min: 15, max: 25, label: \"Arterial \/ Highway\" },\n    parking:      { min: 20, max: 50, label: \"Parking Lot\" },\n    pedestrian:   { min: 5,  max: 10, label: \"Pedestrian \/ Park\" }\n  };\n\n  \/* ---- Wattage estimation algorithm ----\n     Simplified formula:\n       Wattage = (Lux_target * Road_width * Spacing) \/ (LM_per_W * Utilisation * Maintenance)\n     We assume: spacing = 3x mounting height, utilisation = 0.40, maintenance = 0.85, avg LM\/W = 180\n  *\/\n  function estimateWattage(luxTarget, roadWidth, mountHeight) {\n    var spacing = mountHeight * 3;\n    var lmPerW = 180;\n    var utilisation = 0.40;\n    var maintenance = 0.85;\n    var wattage = (luxTarget * roadWidth * spacing) \/ (lmPerW * utilisation * maintenance);\n    return Math.round(wattage);\n  }\n\n  \/* ---- Match products ---- *\/\n  function matchProducts(wattMin, wattMax, powerSource) {\n    var results = [];\n    var keys = Object.keys(PRODUCTS);\n    for (var i = 0; i < keys.length; i++) {\n      var p = PRODUCTS[keys[i]];\n      \/* Power filter: solar products only for solar, grid products only for grid *\/\n      if (powerSource === \"solar\" &#038;&#038; p.power !== \"solar\") continue;\n      if (powerSource === \"grid\" &#038;&#038; p.power !== \"grid\") continue;\n      \/* Overlap check: product range overlaps with needed range *\/\n      if (p.wattRange[1] >= wattMin && p.wattRange[0] <= wattMax) {\n        results.push(p);\n      }\n    }\n    return results;\n  }\n\n  \/* ---- Fit quality ---- *\/\n  function fitQuality(wattNeeded, products) {\n    if (products.length === 0) return { label: \"No Match\", cls: \"bx-fit-tight\" };\n    \/* Check if any product comfortably covers the needed wattage *\/\n    var midWatt = wattNeeded;\n    var bestCoverage = 0;\n    for (var i = 0; i < products.length; i++) {\n      var p = products[i];\n      var rangeSpan = p.wattRange[1] - p.wattRange[0];\n      if (rangeSpan === 0) rangeSpan = 1;\n      \/* How centred is midWatt within the product range *\/\n      if (midWatt >= p.wattRange[0] && midWatt <= p.wattRange[1]) {\n        var posInRange = (midWatt - p.wattRange[0]) \/ rangeSpan;\n        var centrality = 1 - Math.abs(posInRange - 0.5) * 2; \/* 1 = centre, 0 = edge *\/\n        if (centrality > bestCoverage) bestCoverage = centrality;\n      }\n    }\n    if (bestCoverage >= 0.35) return { label: \"Excellent Fit\", cls: \"bx-fit-excellent\", icon: \"&#10003;\" };\n    if (bestCoverage > 0)     return { label: \"Good Fit\", cls: \"bx-fit-good\", icon: \"&#10003;\" };\n    return { label: \"Tight Fit\", cls: \"bx-fit-tight\", icon: \"&#9888;\" };\n  }\n\n  \/* ---- DOM helpers ---- *\/\n  var scope = document.getElementById(\"bx-wattage-selector-v1\");\n  function $(id) { return document.getElementById(id); }\n\n  function showError(msg) {\n    var el = $(\"bx-error-msg\");\n    el.textContent = msg;\n    el.classList.add(\"bx-visible\");\n  }\n  function hideError() {\n    $(\"bx-error-msg\").classList.remove(\"bx-visible\");\n  }\n\n  \/* ---- Calculate handler ---- *\/\n  function handleCalculate() {\n    hideError();\n    var roadType    = $(\"bx-road-type\").value;\n    var roadWidth   = $(\"bx-road-width\").value;\n    var mountHeight = $(\"bx-mount-height\").value;\n    var powerSource = $(\"bx-power-source\").value;\n\n    \/* Validation *\/\n    if (!roadType || !roadWidth || !mountHeight || !powerSource) {\n      showError(\"Please select all four options above to get your recommendation.\");\n      $(\"bx-result-panel\").classList.remove(\"bx-visible\");\n      return;\n    }\n\n    var lux = LUX_MAP[roadType];\n    var rw  = parseFloat(roadWidth);\n    var mh  = parseFloat(mountHeight);\n\n    \/* Calculate wattage range using min and max lux *\/\n    var wattLow  = estimateWattage(lux.min, rw, mh);\n    var wattHigh = estimateWattage(lux.max, rw, mh);\n\n    \/* Solar cap: solar products max out around 100W *\/\n    if (powerSource === \"solar\" && wattHigh > 100) {\n      wattHigh = 100;\n      if (wattLow > 100) wattLow = 80;\n    }\n\n    \/* Get matching products *\/\n    var products = matchProducts(wattLow, wattHigh, powerSource);\n\n    \/* If no products found, widen search slightly *\/\n    if (products.length === 0) {\n      products = matchProducts(wattLow * 0.7, wattHigh * 1.3, powerSource);\n    }\n\n    \/* Fit quality *\/\n    var midWatt = Math.round((wattLow + wattHigh) \/ 2);\n    var fit = fitQuality(midWatt, products);\n\n    \/* Render wattage range *\/\n    $(\"bx-wattage-range\").innerHTML = '<span class=\"bx-mono\">' + wattLow + 'W<\/span> &ndash; <span class=\"bx-mono\">' + wattHigh + 'W<\/span>';\n\n    \/* Render fit badge *\/\n    $(\"bx-fit-badge-wrap\").innerHTML = '<span class=\"bx-fit-badge ' + fit.cls + '\">' + (fit.icon || \"\") + \" \" + fit.label + '<\/span>';\n\n    \/* Render product cards *\/\n    var prodHTML = \"\";\n    if (products.length === 0) {\n      prodHTML = '<div class=\"bx-product-card\"><div class=\"bx-model-name\" style=\"color:var(--bx-red)\">No matching model found<\/div><p style=\"margin:0;font-size:0.94em;\">Your requirements may exceed our standard range for this power source. Please request a custom photometric layout below.<\/p><\/div>';\n    } else {\n      for (var i = 0; i < products.length; i++) {\n        var p = products[i];\n        prodHTML += '<div class=\"bx-product-card\">';\n        prodHTML += '<div class=\"bx-model-name\">' + p.name + '<\/div>';\n        prodHTML += '<div class=\"bx-spec-grid\">';\n        prodHTML += '<div class=\"bx-spec-item\"><span class=\"bx-spec-label\">Wattage<\/span><span class=\"bx-spec-val bx-mono\">' + p.wattRange[0] + ' &ndash; ' + p.wattRange[1] + 'W<\/span><\/div>';\n        prodHTML += '<div class=\"bx-spec-item\"><span class=\"bx-spec-label\">Efficacy<\/span><span class=\"bx-spec-val bx-mono\">' + p.lmw + ' LM\/W<\/span><\/div>';\n        prodHTML += '<div class=\"bx-spec-item\"><span class=\"bx-spec-label\">Battery<\/span><span class=\"bx-spec-val\">' + p.battery + '<\/span><\/div>';\n        prodHTML += '<div class=\"bx-spec-item\"><span class=\"bx-spec-label\">IP Rating<\/span><span class=\"bx-spec-val bx-mono\">' + p.ip + '<\/span><\/div>';\n        prodHTML += '<\/div>';\n        prodHTML += '<p style=\"margin:10px 0 0;font-size:0.89em;color:#5A6170;\">' + p.note + '<\/p>';\n        prodHTML += '<\/div>';\n      }\n    }\n    $(\"bx-products\").innerHTML = prodHTML;\n\n    \/* Show panel *\/\n    $(\"bx-result-panel\").classList.add(\"bx-visible\");\n    $(\"bx-result-panel\").scrollIntoView({ behavior: \"smooth\", block: \"nearest\" });\n  }\n\n  \/* ---- Reset handler ---- *\/\n  function handleReset() {\n    $(\"bx-road-type\").selectedIndex    = 0;\n    $(\"bx-road-width\").selectedIndex   = 0;\n    $(\"bx-mount-height\").selectedIndex = 0;\n    $(\"bx-power-source\").selectedIndex = 0;\n    $(\"bx-result-panel\").classList.remove(\"bx-visible\");\n    hideError();\n  }\n\n  \/* ---- CTA handler ---- *\/\n  function handleCTA() {\n    \/* Trigger Starter Templates \/ Starter popup *\/\n    var popup = document.querySelector(\"#ct-popup-801\");\n    if (popup) {\n      \/* Try common WordPress popup trigger approaches *\/\n      if (typeof jQuery !== \"undefined\") {\n        jQuery(\"#ct-popup-801\").trigger(\"click\");\n      }\n      popup.click();\n    }\n    \/* Fallback: try Starter Templates method *\/\n    if (typeof ctPublic !== \"undefined\" && ctPublic.openPopup) {\n      ctPublic.openPopup(801);\n    }\n    \/* Another fallback for Starter Templates \/ Elementor popups *\/\n    if (typeof elementorProFrontend !== \"undefined\") {\n      try {\n        elementorProFrontend.modules.popup.showPopup({ id: 801 });\n      } catch(e) {}\n    }\n  }\n\n  \/* ---- Bind events via addEventListener ---- *\/\n  $(\"bx-btn-calculate\").addEventListener(\"click\", handleCalculate);\n  $(\"bx-btn-reset\").addEventListener(\"click\", handleReset);\n  $(\"bx-btn-cta\").addEventListener(\"click\", handleCTA);\n\n})();\n<\/script>\n\n<\/section>\n<!-- \/ #bx-wattage-selector-v1 -->\n<\/div><\/div><\/div>\n<\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>LED Street Light Wattage Selection Guide Answer four questions about your project and we will recommend the optimal Guangqi LED street light wattage and model for your application. Road Type (sets lux target) Select road type&#8230;Residential (6 &ndash; 10 lux)Collector (10 &ndash; 15 lux)Arterial \/ Highway (15 &ndash; 25 lux)Parking Lot (20 &ndash; 50 lux)Pedestrian [&hellip;]<\/p>\n","protected":false},"author":6,"featured_media":0,"parent":1200,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_gspb_post_css":"","footnotes":""},"class_list":["post-1291","page","type-page","status-publish","hentry"],"blocksy_meta":{"has_hero_section":"disabled","styles_descriptor":{"styles":{"desktop":"","tablet":"","mobile":""},"google_fonts":[],"version":6}},"_links":{"self":[{"href":"https:\/\/gqlamp.com\/pt\/wp-json\/wp\/v2\/pages\/1291","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/gqlamp.com\/pt\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/gqlamp.com\/pt\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/gqlamp.com\/pt\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/gqlamp.com\/pt\/wp-json\/wp\/v2\/comments?post=1291"}],"version-history":[{"count":0,"href":"https:\/\/gqlamp.com\/pt\/wp-json\/wp\/v2\/pages\/1291\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/gqlamp.com\/pt\/wp-json\/wp\/v2\/pages\/1200"}],"wp:attachment":[{"href":"https:\/\/gqlamp.com\/pt\/wp-json\/wp\/v2\/media?parent=1291"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}