{"id":31337,"date":"2026-07-05T22:29:58","date_gmt":"2026-07-05T22:29:58","guid":{"rendered":"https:\/\/www.bwmo.com\/?page_id=31337"},"modified":"2026-07-05T22:31:20","modified_gmt":"2026-07-05T22:31:20","slug":"security-cameras","status":"publish","type":"page","link":"https:\/\/www.bwmo.com\/index.php\/security-cameras\/","title":{"rendered":"Security Cameras"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"31337\" class=\"elementor elementor-31337\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"wd-negative-gap elementor-element elementor-element-b438f47 e-flex e-con-boxed wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-parent\" data-id=\"b438f47\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4bb1d44 elementor-widget elementor-widget-shortcode\" data-id=\"4bb1d44\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\n<div id=\"ced-camera-configurator\">\n  <section class=\"ced-camera-hero\">\n    <div class=\"ced-camera-hero-shell\">\n      <div class=\"ced-camera-copy\">\n        <span>CED Camera Security<\/span>\n        <h1>Smarter monitoring for every space.<\/h1>\n        <p>Choose the right camera for homes, shops, gates and outdoor areas in Ghana.<\/p>\n      <\/div>\n      <div class=\"ced-camera-hero-visual\" aria-hidden=\"true\">\n        <div class=\"ced-camera-lens ced-camera-lens-main\"><\/div>\n        <div class=\"ced-camera-lens ced-camera-lens-small\"><\/div>\n        <div class=\"ced-camera-signal\"><\/div>\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <section class=\"ced-camera-step\" id=\"ced-camera-step-model\">\n    <div class=\"ced-camera-step-head\">\n      <span>Step 1<\/span>\n      <h2>Choose your camera type.<\/h2>\n      <p>Select a camera and the page will update the best use, features and estimate.<\/p>\n    <\/div>\n\n    <div class=\"ced-camera-preview-card is-empty\">\n      <img decoding=\"async\" id=\"ced-camera-preview\" src=\"https:\/\/via.placeholder.com\/1400x900\/f5f5f7\/1d1d1f?text=CED+Camera\" alt=\"CED Camera Preview\">\n      <div class=\"ced-camera-empty-preview\">\n        <div class=\"ced-camera-empty-icon\">CED<\/div>\n        <h3>Choose a camera<\/h3>\n        <p>Select a model below to preview the monitoring solution.<\/p>\n      <\/div>\n    <\/div>\n\n    <div id=\"ced-camera-models\" class=\"ced-camera-horizontal-scroll\"><\/div>\n  <\/section>\n\n  <section class=\"ced-camera-step\" id=\"ced-camera-details\">\n    <div class=\"ced-camera-step-head\">\n      <span>Camera Details<\/span>\n      <h2 id=\"ced-camera-detail-title\">Select a camera first.<\/h2>\n      <p id=\"ced-camera-detail-description\">The feature cards below will update based on the camera you choose.<\/p>\n    <\/div>\n\n    <div class=\"ced-camera-info-grid\">\n      <div>\n        <span>Best For<\/span>\n        <strong id=\"ced-camera-best-for\">-<\/strong>\n      <\/div>\n      <div>\n        <span>Starting From<\/span>\n        <strong id=\"ced-camera-price-from\">\u20b50<\/strong>\n      <\/div>\n    <\/div>\n\n    <div id=\"ced-camera-features\" class=\"ced-camera-feature-grid\">\n      <div class=\"ced-camera-feature-card\">\n        <div class=\"ced-camera-feature-placeholder\"><\/div>\n        <strong>Camera features appear here<\/strong>\n        <span>Choose a camera type to see the matching function introduction.<\/span>\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <section class=\"ced-camera-step ced-camera-package\" id=\"ced-camera-package\">\n    <div class=\"ced-camera-step-head\">\n      <span>Step 2<\/span>\n      <h2>Choose your camera quantity.<\/h2>\n      <p>Final price depends on camera type, quantity, installation location and cable work.<\/p>\n    <\/div>\n\n    <div class=\"ced-camera-package-grid\">\n      <button type=\"button\" class=\"ced-camera-package-card active\" data-count=\"1\">\n        <strong>1 Camera<\/strong>\n        <span>Small room, shop counter or entrance<\/span>\n      <\/button>\n      <button type=\"button\" class=\"ced-camera-package-card\" data-count=\"2\">\n        <strong>2 Cameras<\/strong>\n        <span>Front and back coverage<\/span>\n      <\/button>\n      <button type=\"button\" class=\"ced-camera-package-card\" data-count=\"4\">\n        <strong>4 Cameras<\/strong>\n        <span>Home or small business setup<\/span>\n      <\/button>\n      <button type=\"button\" class=\"ced-camera-package-card\" data-count=\"8\">\n        <strong>8 Cameras<\/strong>\n        <span>Compound, office or larger shop<\/span>\n      <\/button>\n    <\/div>\n  <\/section>\n\n  <section class=\"ced-camera-step ced-camera-summary\" id=\"ced-camera-summary\">\n    <div class=\"ced-camera-step-head\">\n      <span>Current Solution<\/span>\n      <h2>Your CED camera setup.<\/h2>\n      <p>Use this estimate to request a final installation quote.<\/p>\n    <\/div>\n\n    <div class=\"ced-camera-summary-card\">\n      <div><span>Camera<\/span><strong id=\"camera-sum-model\">-<\/strong><\/div>\n      <div><span>Quantity<\/span><strong id=\"camera-sum-qty\">1 Camera<\/strong><\/div>\n      <div><span>Starting Price<\/span><strong id=\"camera-sum-unit\">\u20b50<\/strong><\/div>\n      <div class=\"ced-camera-total\"><span>Estimated From<\/span><strong id=\"camera-sum-total\">\u20b50<\/strong><\/div>\n    <\/div>\n\n    <div class=\"ced-camera-note\">\n      <strong>Free site check for selected installations.<\/strong>\n      <span>Our team will confirm camera position, network type and installation requirements before final payment.<\/span>\n    <\/div>\n  <\/section>\n\n  <div id=\"ced-camera-sticky-bar\" class=\"ced-camera-bottom-bar\">\n    <div class=\"ced-camera-sticky-info\">\n      <span id=\"ced-camera-sticky-label\">Estimated From<\/span>\n      <strong id=\"ced-camera-bottom-total\">\u20b50<\/strong>\n      <em id=\"ced-camera-sticky-meta\">Choose a camera type first<\/em>\n      <small>Installation quote required<\/small>\n    <\/div>\n    <div class=\"ced-camera-sticky-actions\">\n      <button id=\"ced-camera-request-quote\" type=\"button\">Request Quote<\/button>\n    <\/div>\n  <\/div>\n<\/div>\n\n<style>\n.entry-title,.page-title,.elementor-page-title{display:none!important}\n#ced-camera-configurator{--bg:#f5f5f7;--card:#fff;--text:#1d1d1f;--muted:#6e6e73;--line:#d2d2d7;--blue:#0071e3;--orange:#ff6b00;background:#fff;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,\"Segoe UI\",sans-serif;min-height:100vh;padding-bottom:116px}\n#ced-camera-configurator *{box-sizing:border-box}\n#ced-camera-configurator button{font-family:inherit!important;appearance:none!important;-webkit-appearance:none!important}\n#ced-camera-configurator .ced-camera-hero{margin:14px 10px;padding:0!important;text-align:center;background:#fff!important;border-radius:0!important;overflow:visible!important}\n#ced-camera-configurator .ced-camera-hero-shell{width:100%;padding:34px 14px 30px;text-align:center;border-radius:32px!important;overflow:hidden!important;background:#f5f5f7!important;-webkit-mask-image:-webkit-radial-gradient(white,black);clip-path:inset(0 round 32px)}\n#ced-camera-configurator .ced-camera-copy span,#ced-camera-configurator .ced-camera-step-head span{display:block;color:var(--muted);font-size:12px;font-weight:750;margin-bottom:8px}\n#ced-camera-configurator .ced-camera-copy h1{margin:0 auto 10px;max-width:390px;font-size:34px;line-height:1.05;letter-spacing:-1.2px;font-weight:820}\n#ced-camera-configurator .ced-camera-copy p,#ced-camera-configurator .ced-camera-step-head p{margin:0 auto;max-width:360px;color:var(--muted);font-size:15px;line-height:1.42}\n#ced-camera-configurator .ced-camera-hero-visual{margin:26px auto 0;width:min(100%,430px);height:310px;border-radius:30px;background:linear-gradient(180deg,#fff 0%,#f2f2f4 100%);border:1px solid rgba(0,0,0,.05);position:relative;overflow:hidden}\n#ced-camera-configurator .ced-camera-hero-visual:before{content:\"\";position:absolute;left:50%;top:48px;width:200px;height:76px;border-radius:40px;background:#202124;transform:translateX(-50%);box-shadow:0 20px 40px rgba(0,0,0,.18)}\n#ced-camera-configurator .ced-camera-hero-visual:after{content:\"\";position:absolute;left:50%;bottom:48px;width:108px;height:126px;border-radius:32px;background:#202124;transform:translateX(-50%);box-shadow:0 24px 50px rgba(0,0,0,.2)}\n#ced-camera-configurator .ced-camera-lens{position:absolute;z-index:2;border-radius:50%;background:radial-gradient(circle at 50% 50%,#121316 0 23%,#2f3136 24% 42%,#0b0b0c 43% 64%,#45484f 65% 100%);box-shadow:inset 0 0 0 7px rgba(255,255,255,.08),0 12px 28px rgba(0,0,0,.26)}\n#ced-camera-configurator .ced-camera-lens-main{left:50%;top:58px;width:60px;height:60px;transform:translateX(-50%)}\n#ced-camera-configurator .ced-camera-lens-small{left:50%;bottom:94px;width:54px;height:54px;transform:translateX(-50%)}\n#ced-camera-configurator .ced-camera-signal{position:absolute;z-index:1;left:50%;bottom:154px;width:230px;height:230px;border:2px solid rgba(255,107,0,.22);border-radius:50%;transform:translateX(-50%);box-shadow:0 0 0 32px rgba(255,107,0,.06),0 0 0 72px rgba(255,107,0,.035)}\n#ced-camera-configurator .ced-camera-step{padding:34px 14px 38px;background:#fff;border-radius:32px;margin:14px 10px;box-shadow:0 10px 35px rgba(0,0,0,.045)}\n#ced-camera-configurator .ced-camera-step-head{margin-bottom:20px;text-align:center}\n#ced-camera-configurator .ced-camera-step-head h2{margin:0 auto 10px;max-width:360px;font-size:28px;line-height:1.06;letter-spacing:-.8px;font-weight:820}\n#ced-camera-configurator .ced-camera-preview-card{width:100%;height:360px;border-radius:28px;overflow:hidden;background:#f5f5f7;border:1px solid rgba(0,0,0,.06);display:flex;align-items:center;justify-content:center;margin-bottom:22px;position:relative}\n#ced-camera-configurator .ced-camera-preview-card img{width:100%;height:100%;object-fit:contain;object-position:center;border-radius:28px;transition:opacity .3s ease,transform .3s ease,filter .3s ease}\n#ced-camera-configurator .ced-camera-preview-card.is-empty img{display:none}\n#ced-camera-configurator .ced-camera-preview-card:not(.is-empty) .ced-camera-empty-preview{display:none}\n#ced-camera-configurator img.is-changing{opacity:0;transform:scale(.985);filter:blur(5px)}\n#ced-camera-configurator .ced-camera-empty-preview{width:100%;height:100%;border-radius:28px;background:linear-gradient(180deg,#fff 0%,#f5f5f7 100%);border:1px solid rgba(0,0,0,.06);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:34px 24px}\n#ced-camera-configurator .ced-camera-empty-icon{width:88px;height:88px;border-radius:26px;background:#111;color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:850;letter-spacing:-.04em;margin-bottom:22px;box-shadow:0 18px 45px rgba(0,0,0,.16)}\n#ced-camera-configurator .ced-camera-empty-preview h3{margin:0 0 10px;font-size:28px;line-height:1.08;letter-spacing:-.05em;font-weight:820;color:#111}\n#ced-camera-configurator .ced-camera-empty-preview p{margin:0;max-width:320px;font-size:15px;line-height:1.45;color:#6e6e73;font-weight:500}\n#ced-camera-configurator .ced-camera-horizontal-scroll{display:flex;gap:12px;overflow-x:auto;padding:2px 0 14px;-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x mandatory}\n#ced-camera-configurator .ced-camera-horizontal-scroll::-webkit-scrollbar{display:none}\n#ced-camera-configurator .ced-camera-model-card{border:none!important;background:transparent!important;padding:0!important;margin:0!important;text-align:center!important;scroll-snap-align:start;cursor:pointer;display:flex!important;flex-direction:column!important;align-items:center!important;gap:8px!important;flex:0 0 43%;min-width:136px}\n#ced-camera-configurator .ced-camera-thumb-frame{width:100%;height:130px;border:1.5px solid var(--line);border-radius:24px;overflow:hidden;background:#f5f5f7;display:flex;align-items:center;justify-content:center;position:relative;transition:border-color .22s ease,box-shadow .22s ease,opacity .22s ease}\n#ced-camera-configurator .ced-camera-model-card.active .ced-camera-thumb-frame{border-color:var(--blue);box-shadow:0 0 0 1px var(--blue)}\n#ced-camera-configurator .ced-camera-model-card.active .ced-camera-thumb-frame:after{content:\"\u2713\";position:absolute;right:8px;bottom:8px;width:20px;height:20px;border-radius:50%;background:var(--orange);color:#fff;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center}\n#ced-camera-configurator .ced-camera-model-card.is-unavailable{opacity:.45;cursor:not-allowed}\n#ced-camera-configurator .ced-camera-thumb-frame img{width:100%;height:100%;object-fit:cover;display:block;border-radius:22px}\n#ced-camera-configurator .ced-camera-thumb-placeholder{width:72px;height:72px;border-radius:22px;background:#111;position:relative;box-shadow:0 14px 32px rgba(0,0,0,.14)}\n#ced-camera-configurator .ced-camera-thumb-placeholder:before{content:\"\";position:absolute;left:50%;top:50%;width:34px;height:34px;border-radius:50%;background:radial-gradient(circle,#111 0 28%,#fff 29% 35%,#333 36% 100%);transform:translate(-50%,-50%)}\n#ced-camera-configurator .ced-camera-thumb-label{display:block!important;width:100%!important;font-size:12px!important;font-weight:780!important;color:var(--text)!important;line-height:1.2!important;text-align:center!important}\n#ced-camera-configurator .ced-camera-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}\n#ced-camera-configurator .ced-camera-info-grid div{background:#f5f5f7;border-radius:22px;padding:16px;text-align:left;border:1px solid rgba(0,0,0,.05)}\n#ced-camera-configurator .ced-camera-info-grid span{display:block;color:var(--muted);font-size:12px;font-weight:720;margin-bottom:8px}\n#ced-camera-configurator .ced-camera-info-grid strong{display:block;color:var(--text);font-size:16px;line-height:1.22;font-weight:820}\n#ced-camera-configurator .ced-camera-feature-grid{display:grid;grid-template-columns:1fr;gap:12px}\n#ced-camera-configurator .ced-camera-feature-card{background:#f5f5f7;border-radius:26px;padding:14px;text-align:left;border:1px solid rgba(0,0,0,.05);overflow:hidden}\n#ced-camera-configurator .ced-camera-feature-card img{width:100%;height:220px;object-fit:cover;border-radius:20px;margin-bottom:16px;background:#fff}\n#ced-camera-configurator .ced-camera-feature-placeholder{width:100%;height:160px;border-radius:20px;background:linear-gradient(180deg,#fff,#ececef);margin-bottom:16px;position:relative;overflow:hidden}\n#ced-camera-configurator .ced-camera-feature-placeholder:before{content:\"\";position:absolute;left:50%;top:50%;width:88px;height:88px;border-radius:50%;background:#111;transform:translate(-50%,-50%);box-shadow:0 0 0 28px rgba(255,107,0,.08)}\n#ced-camera-configurator .ced-camera-feature-placeholder:after{content:\"\";position:absolute;left:50%;top:50%;width:42px;height:42px;border-radius:50%;background:radial-gradient(circle,#111 0 25%,#fff 26% 35%,#3b3b3d 36% 100%);transform:translate(-50%,-50%)}\n#ced-camera-configurator .ced-camera-feature-card strong{display:block;font-size:20px;line-height:1.1;font-weight:820;color:var(--text);letter-spacing:-.3px;margin:0 0 8px}\n#ced-camera-configurator .ced-camera-feature-card span{display:block;font-size:14px;line-height:1.4;color:var(--muted)}\n#ced-camera-configurator .ced-camera-package-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}\n#ced-camera-configurator .ced-camera-package-card{min-height:112px;border:1px solid rgba(0,0,0,.08);border-radius:24px;background:#f5f5f7;padding:16px;text-align:left;cursor:pointer}\n#ced-camera-configurator .ced-camera-package-card.active{border-color:var(--blue);box-shadow:0 0 0 1px var(--blue);background:#fff}\n#ced-camera-configurator .ced-camera-package-card strong{display:block;font-size:16px;font-weight:820;color:var(--text);margin-bottom:8px}\n#ced-camera-configurator .ced-camera-package-card span{display:block;font-size:12px;line-height:1.35;color:var(--muted)}\n#ced-camera-configurator .ced-camera-summary-card{background:#f5f5f7;border-radius:26px;padding:18px;margin-bottom:16px}\n#ced-camera-configurator .ced-camera-summary-card div{display:flex;justify-content:space-between;gap:14px;padding:13px 0;border-bottom:1px solid rgba(0,0,0,.08)}\n#ced-camera-configurator .ced-camera-summary-card div:last-child{border-bottom:none}\n#ced-camera-configurator .ced-camera-summary-card span{color:var(--muted);font-size:13px}\n#ced-camera-configurator .ced-camera-summary-card strong{font-size:14px;text-align:right}\n#ced-camera-configurator .ced-camera-total strong{font-size:22px}\n#ced-camera-configurator .ced-camera-note{background:#fff4eb;border:1px solid rgba(255,107,0,.16);border-radius:22px;padding:16px;text-align:left}\n#ced-camera-configurator .ced-camera-note strong{display:block;color:var(--orange);font-size:15px;margin-bottom:5px}\n#ced-camera-configurator .ced-camera-note span{display:block;color:#7a4a26;font-size:12px;line-height:1.35}\n#ced-camera-configurator .ced-camera-bottom-bar{position:fixed;left:0;right:0;bottom:0;z-index:999999;padding:12px 14px calc(12px + env(safe-area-inset-bottom));background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);border-top:1px solid rgba(0,0,0,.08);box-shadow:0 -12px 34px rgba(0,0,0,.08);display:flex;align-items:center;justify-content:space-between;gap:12px}\n#ced-camera-configurator .ced-camera-sticky-info{min-width:0;flex:1;text-align:left}\n#ced-camera-configurator .ced-camera-bottom-bar span{display:block;font-size:11px;font-weight:750;color:var(--muted);line-height:1.1;margin-bottom:3px}\n#ced-camera-configurator .ced-camera-bottom-bar strong{display:block;font-size:20px;line-height:1.05;font-weight:850;color:var(--text);white-space:nowrap}\n#ced-camera-configurator .ced-camera-bottom-bar em{display:block;margin-top:3px;color:var(--muted);font-size:11px;line-height:1.15;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}\n#ced-camera-configurator .ced-camera-bottom-bar small{display:block;margin-top:3px;color:var(--orange);font-size:11px;line-height:1.15;font-weight:800;white-space:nowrap}\n#ced-camera-configurator .ced-camera-sticky-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:0 0 auto}\n#ced-camera-configurator .ced-camera-bottom-bar button{height:48px;border-radius:999px;padding:0 22px;font-size:13px;font-weight:850;cursor:pointer;border:none;white-space:nowrap;background:var(--orange);color:#fff;box-shadow:0 10px 24px rgba(255,107,0,.23)}\n@media(min-width:720px){#ced-camera-configurator{max-width:760px;margin:0 auto}#ced-camera-configurator .ced-camera-feature-grid{grid-template-columns:1fr 1fr}#ced-camera-configurator .ced-camera-feature-card img,#ced-camera-configurator .ced-camera-feature-placeholder{height:180px}}\n@media(max-width:380px){#ced-camera-configurator .ced-camera-bottom-bar{padding-left:10px;padding-right:10px;gap:8px}#ced-camera-configurator .ced-camera-bottom-bar button{padding:0 14px;font-size:12px}#ced-camera-configurator .ced-camera-bottom-bar strong{font-size:18px}.ced-camera-package-grid{grid-template-columns:1fr!important}}\n<\/style>\n\n<script>\n(function(){\n  const cameras = [{\"code\":\"CED SPOTLIGHT CAMERA\",\"name\":\"CED Spotlight Camera\",\"product\":\"\",\"scene\":\"\",\"priceFrom\":1299,\"bestFor\":\"Homes, shops and small offices  Short Description: A reliable everyday security camera with spotlight support for clearer night monitoring.\",\"description\":\"A reliable everyday security camera with spotlight support for clearer night monitoring.\",\"available\":true,\"features\":[{\"image\":\"\",\"title\":\"Spotlight Night Vision\",\"text\":\"Built-in light helps capture clearer color images at night.\"},{\"image\":\"\",\"title\":\"Motion Detection\",\"text\":\"Receive alerts when movement is detected.\"},{\"image\":\"\",\"title\":\"Mobile App Live View\",\"text\":\"Check your camera from your phone anytime.\"},{\"image\":\"\",\"title\":\"Two-way Audio\",\"text\":\"Listen and speak through the camera.\"}]},{\"code\":\"CED DUAL LENS TRACKING CAMERA\",\"name\":\"CED Dual Lens Tracking Camera\",\"product\":\"\",\"scene\":\"\",\"priceFrom\":1699,\"bestFor\":\"Larger entrances, compounds and shop fronts  Short Description: A dual-lens camera for wider coverage, with one lens designed for movement tracking.\",\"description\":\"A dual-lens camera for wider coverage, with one lens designed for movement tracking.\",\"available\":true,\"features\":[{\"image\":\"\",\"title\":\"Dual Lens View\",\"text\":\"Two camera views help cover more area.\"},{\"image\":\"\",\"title\":\"Auto Tracking\",\"text\":\"One lens can follow detected movement.\"},{\"image\":\"\",\"title\":\"Wide Area Coverage\",\"text\":\"Good for gates, shops and wider entrances.\"},{\"image\":\"\",\"title\":\"Mobile App Control\",\"text\":\"Control and monitor the camera remotely.\"}]},{\"code\":\"CED 4G OUTDOOR CAMERA\",\"name\":\"CED 4G Outdoor Camera\",\"product\":\"\",\"scene\":\"\",\"priceFrom\":1399,\"bestFor\":\"Outdoor areas without WiFi  Short Description: A SIM-card outdoor camera designed for places where WiFi is not available.\",\"description\":\"A SIM-card outdoor camera designed for places where WiFi is not available.\",\"available\":true,\"features\":[{\"image\":\"\",\"title\":\"4G SIM Card Connection\",\"text\":\"Works with mobile network data instead of WiFi.\"},{\"image\":\"\",\"title\":\"No WiFi Needed\",\"text\":\"Useful for remote gates, sites and outdoor areas.\"},{\"image\":\"\",\"title\":\"Outdoor Waterproof\",\"text\":\"Built for outdoor monitoring conditions.\"},{\"image\":\"\",\"title\":\"Battery Backup\",\"text\":\"Helps keep monitoring active during power interruptions.\"}]}];\n  const fallback = \"https:\/\/via.placeholder.com\/1400x900\/f5f5f7\/1d1d1f?text=CED+Camera\";\n  const state = {camera:null,quantity:1};\n\n  const preview = document.getElementById(\"ced-camera-preview\");\n  const modelsWrap = document.getElementById(\"ced-camera-models\");\n  const detailTitle = document.getElementById(\"ced-camera-detail-title\");\n  const detailDescription = document.getElementById(\"ced-camera-detail-description\");\n  const bestFor = document.getElementById(\"ced-camera-best-for\");\n  const priceFrom = document.getElementById(\"ced-camera-price-from\");\n  const featuresWrap = document.getElementById(\"ced-camera-features\");\n  const sumModel = document.getElementById(\"camera-sum-model\");\n  const sumQty = document.getElementById(\"camera-sum-qty\");\n  const sumUnit = document.getElementById(\"camera-sum-unit\");\n  const sumTotal = document.getElementById(\"camera-sum-total\");\n  const bottomTotal = document.getElementById(\"ced-camera-bottom-total\");\n  const stickyMeta = document.getElementById(\"ced-camera-sticky-meta\");\n  const quoteBtn = document.getElementById(\"ced-camera-request-quote\");\n\n  function money(num){ return \"\u20b5\" + Number(num || 0).toLocaleString(); }\n  function estimate(){ return state.camera ? Number(state.camera.priceFrom || 0) * Number(state.quantity || 1) : 0; }\n  function preload(src){ if(src){ const img = new Image(); img.src = src; } }\n\n  function fadeSwap(imgEl, src){\n    if(!imgEl || !src) return;\n    preload(src);\n    imgEl.classList.add(\"is-changing\");\n    setTimeout(()=>{\n      imgEl.src = src;\n      imgEl.onerror = function(){ imgEl.src = fallback; };\n      requestAnimationFrame(()=>imgEl.classList.remove(\"is-changing\"));\n    },160);\n  }\n\n  function placeholderCard(title, text){\n    return `\n      <div class=\"ced-camera-feature-card\">\n        <div class=\"ced-camera-feature-placeholder\"><\/div>\n        <strong>${title || \"Camera Feature\"}<\/strong>\n        <span>${text || \"Feature details will be confirmed by the selected camera model.\"}<\/span>\n      <\/div>`;\n  }\n\n  function renderFeatures(){\n    if(!state.camera || !Array.isArray(state.camera.features) || !state.camera.features.length){\n      featuresWrap.innerHTML = placeholderCard(\"Camera features appear here\",\"Choose a camera type to see the matching function introduction.\");\n      return;\n    }\n\n    featuresWrap.innerHTML = state.camera.features.map((feature)=>{\n      const media = feature.image\n        ? `<img decoding=\"async\" src=\"${feature.image}\" alt=\"${feature.title || \"Camera feature\"}\" onerror=\"this.style.display='none';this.insertAdjacentHTML('afterend','<div class=&quot;ced-camera-feature-placeholder&quot;><\/div>');\">`\n        : `<div class=\"ced-camera-feature-placeholder\"><\/div>`;\n\n      return `\n        <div class=\"ced-camera-feature-card\">\n          ${media}\n          <strong>${feature.title || \"Camera Feature\"}<\/strong>\n          <span>${feature.text || \"\"}<\/span>\n        <\/div>`;\n    }).join(\"\");\n  }\n\n  function updateSummary(){\n    const camera = state.camera;\n    const unit = camera ? Number(camera.priceFrom || 0) : 0;\n    const total = estimate();\n    sumModel.textContent = camera ? camera.name : \"-\";\n    sumQty.textContent = state.quantity + (state.quantity === 1 ? \" Camera\" : \" Cameras\");\n    sumUnit.textContent = money(unit);\n    sumTotal.textContent = money(total);\n    bottomTotal.textContent = money(total);\n    stickyMeta.textContent = camera ? (state.quantity + (state.quantity === 1 ? \" camera\" : \" cameras\") + \" selected\") : \"Choose a camera type first\";\n  }\n\n  function chooseCamera(camera){\n    if(camera.available === false) return;\n    state.camera = camera;\n    detailTitle.textContent = camera.name;\n    detailDescription.textContent = camera.description || \"CED camera solution for practical everyday monitoring.\";\n    bestFor.textContent = camera.bestFor || \"-\";\n    priceFrom.textContent = money(camera.priceFrom || 0);\n\n    const previewWrap = document.querySelector(\"#ced-camera-configurator .ced-camera-preview-card\");\n    const image = camera.scene || camera.product || \"\";\n    if(image){\n      previewWrap.classList.remove(\"is-empty\");\n      fadeSwap(preview, image);\n    }else{\n      previewWrap.classList.add(\"is-empty\");\n    }\n\n    renderFeatures();\n    updateSummary();\n    setTimeout(()=>{\n      const el = document.getElementById(\"ced-camera-details\");\n      if(el) el.scrollIntoView({behavior:\"smooth\",block:\"start\"});\n    },220);\n  }\n\n  function renderModels(){\n    modelsWrap.innerHTML = \"\";\n    cameras.forEach((camera)=>{\n      preload(camera.product);\n      preload(camera.scene);\n      const card = document.createElement(\"button\");\n      card.type = \"button\";\n      card.className = \"ced-camera-model-card\" + (camera.available === false ? \" is-unavailable\" : \"\");\n      const thumb = camera.product || camera.scene\n        ? `<img decoding=\"async\" src=\"${camera.product || camera.scene}\" alt=\"${camera.name}\" onerror=\"this.parentNode.innerHTML='<div class=&quot;ced-camera-thumb-placeholder&quot;><\/div>';\">`\n        : `<div class=\"ced-camera-thumb-placeholder\"><\/div>`;\n      card.innerHTML = `<div class=\"ced-camera-thumb-frame\">${thumb}<\/div><span class=\"ced-camera-thumb-label\">${String(camera.name || camera.code || \"\").toUpperCase()}<\/span>`;\n      card.addEventListener(\"click\",()=>{\n        if(camera.available === false) return;\n        document.querySelectorAll(\"#ced-camera-configurator .ced-camera-model-card\").forEach(el=>el.classList.remove(\"active\"));\n        card.classList.add(\"active\");\n        chooseCamera(camera);\n      });\n      modelsWrap.appendChild(card);\n    });\n  }\n\n  document.querySelectorAll(\"#ced-camera-configurator .ced-camera-package-card\").forEach((btn)=>{\n    btn.addEventListener(\"click\",()=>{\n      document.querySelectorAll(\"#ced-camera-configurator .ced-camera-package-card\").forEach(el=>el.classList.remove(\"active\"));\n      btn.classList.add(\"active\");\n      state.quantity = Math.max(1, Number(btn.dataset.count || 1));\n      updateSummary();\n      const el = document.getElementById(\"ced-camera-summary\");\n      if(el) el.scrollIntoView({behavior:\"smooth\",block:\"center\"});\n    });\n  });\n\n  quoteBtn.addEventListener(\"click\",()=>{\n    if(!state.camera){\n      alert(\"Please choose a camera type first.\");\n      return;\n    }\n\n    const message = [\n      \"CED Camera Installation Quote\",\n      \"\",\n      \"Camera: \" + state.camera.name,\n      \"Quantity: \" + state.quantity,\n      \"Estimated from: \" + money(estimate()),\n      \"Best for: \" + (state.camera.bestFor || \"-\"),\n      \"\",\n      \"Final quote depends on installation position, cable work, power and network requirements.\"\n    ].join(\"\\\\n\");\n\n    alert(message);\n  });\n\n  renderModels();\n  renderFeatures();\n  updateSummary();\n})();\n<\/script>\n\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-31337","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.bwmo.com\/index.php\/wp-json\/wp\/v2\/pages\/31337","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bwmo.com\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.bwmo.com\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.bwmo.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bwmo.com\/index.php\/wp-json\/wp\/v2\/comments?post=31337"}],"version-history":[{"count":4,"href":"https:\/\/www.bwmo.com\/index.php\/wp-json\/wp\/v2\/pages\/31337\/revisions"}],"predecessor-version":[{"id":31341,"href":"https:\/\/www.bwmo.com\/index.php\/wp-json\/wp\/v2\/pages\/31337\/revisions\/31341"}],"wp:attachment":[{"href":"https:\/\/www.bwmo.com\/index.php\/wp-json\/wp\/v2\/media?parent=31337"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}