{"id":18165,"date":"2026-11-03T12:50:35","date_gmt":"2026-11-03T19:50:35","guid":{"rendered":"https:\/\/allinonemarketingpro.com\/abbotsford\/services\/headless-cms-development\/"},"modified":"2026-11-05T00:26:55","modified_gmt":"2026-11-05T07:26:55","slug":"headless-cms-development","status":"publish","type":"page","link":"https:\/\/allinonemarketingpro.com\/abbotsford\/services\/headless-cms-development\/","title":{"rendered":"Headless CMS Development"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"18165\" class=\"elementor elementor-18165\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d52e714 e-con-full aio-page e-flex e-con e-parent\" data-id=\"d52e714\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-11541e9 elementor-widget elementor-widget-aio-service-hero\" data-id=\"11541e9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"aio-service-hero.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<header style=\"background:#093346;color:#fff;padding:clamp(140px,16vw,210px) clamp(20px,4.5vw,64px) clamp(56px,7vw,96px)\"><div style=\"max-width:1312px;margin:0 auto;display:flex;flex-direction:column;gap:28px\">\n      <nav aria-label=\"Breadcrumb\" style=\"display:flex;flex-wrap:wrap;gap:10px;white-space:nowrap;font-family:Montserrat,MontserratFb;font-weight:600;font-size:13px;letter-spacing:.14em;color:#9FB3BE\"><a href=\"\/abbotsford\/services\/\" style=\"color:#9FB3BE;text-decoration:none\" class=\"h1f6476f\">DEVELOPMENT<\/a><span aria-hidden=\"true\">\/<\/span><span>CMS DEVELOPMENT<\/span><\/nav>\n      <div style=\"display:flex;flex-wrap:wrap;gap:40px clamp(40px,6vw,96px);align-items:center\"><div style=\"flex:1 1 520px;min-width:0;display:flex;flex-direction:column;gap:22px\"><h1 style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:clamp(38px,4.8vw,72px);line-height:1;letter-spacing:-.03em;color:#fff;text-wrap:balance\">Headless CMS development in Abbotsford<\/h1><p style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:300;font-size:clamp(22px,2.2vw,32px);line-height:1.2;letter-spacing:-.01em;color:#fff;text-wrap:balance\">Write your content once and let every screen use it.<\/p><p style=\"margin:0;max-width:640px;font-size:18px;line-height:1.6;color:#E4E9EC;text-wrap:pretty\">Headless CMS development separates what you say from where it appears. We model your content once, store it in an editing system your team can learn quickly, and deliver it by API to your website, an app or any screen that needs it.<\/p><div style=\"display:flex;flex-wrap:wrap;gap:12px\"><a href=\"\/abbotsford\/start-a-project\/\" style=\"display:flex;align-items:center;min-height:56px;padding:0 28px;background:#E82400;color:#fff;font-family:Montserrat,MontserratFb;font-weight:700;font-size:15px;letter-spacing:.06em;text-decoration:none;white-space:nowrap\" class=\"hf3251d8\">REQUEST A FREE AUDIT<\/a><a href=\"#sv-pr\" style=\"display:flex;align-items:center;min-height:56px;padding:0 24px;border:1px solid #9FB3BE;color:#fff;font-family:Montserrat,MontserratFb;font-weight:700;font-size:15px;letter-spacing:.06em;text-decoration:none;white-space:nowrap\" class=\"he524528\">HOW WE HELP \u2193<\/a><\/div><p style=\"margin:0;font-size:14px;line-height:1.5;color:#9FB3BE\">Free audit, no obligation \u00b7 In-house team since 2015 \u00b7 Abbotsford studio<\/p><\/div><figure style=\"flex:1 1 400px;min-width:0;margin:0\"><img loading=\"lazy\" decoding=\"async\" srcset=\"https:\/\/allinonemarketingpro.com\/abbotsford\/wp-content\/uploads\/2026\/11\/svc-headless-cms-development.jpg 1400w, https:\/\/allinonemarketingpro.com\/abbotsford\/wp-content\/uploads\/2026\/11\/svc-headless-cms-development-300x186.jpg 300w, https:\/\/allinonemarketingpro.com\/abbotsford\/wp-content\/uploads\/2026\/11\/svc-headless-cms-development-1024x636.jpg 1024w, https:\/\/allinonemarketingpro.com\/abbotsford\/wp-content\/uploads\/2026\/11\/svc-headless-cms-development-768x477.jpg 768w\" sizes=\"(max-width: 1400px) 100vw, 1400px\" src=\"https:\/\/allinonemarketingpro.com\/abbotsford\/wp-content\/uploads\/2026\/11\/svc-headless-cms-development.jpg\" alt=\"A desktop computer and a laptop side by side on a white desk.\" width=\"1400\" height=\"1050\" style=\"display:block;width:100%;height:auto;aspect-ratio:4\/3;object-fit:cover;background:#0F4C68\"><\/figure><\/div>\n    <\/div><\/header>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-88983d7 elementor-widget elementor-widget-aio-service-problems\" data-id=\"88983d7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"aio-service-problems.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<section aria-labelledby=\"sv-pr\" style=\"background:#F4F7F8;padding:clamp(56px,8vw,120px) clamp(20px,4.5vw,64px)\"><div data-rv=\"ip1\" style=\"max-width:1312px;margin:0 auto;display:flex;flex-direction:column;gap:clamp(32px,4vw,48px)\"><div style=\"display:flex;flex-wrap:wrap;gap:20px 64px;justify-content:space-between;align-items:flex-end\"><div style=\"display:flex;flex-direction:column;gap:16px\"><div style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:13px;letter-spacing:.2em;color:#45606F\">PROBLEMS WE SOLVE OFTEN<\/div><h2 id=\"sv-pr\" style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:clamp(30px,3.6vw,52px);line-height:1;letter-spacing:-.03em;color:#093346\">Content problems a headless CMS solves, and how we build it<\/h2><\/div><p style=\"margin:0;max-width:440px;font-size:17px;line-height:1.6;color:#2B4A5A\">Headless is not for every site, so we start by asking what is actually going wrong. These are the situations where it earns its place, and what we build for each.<\/p><\/div>\n      <ol style=\"list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:16px\"><li style=\"display:flex;flex-direction:column;gap:18px;padding:clamp(24px,2.4vw,32px);background:#fff;border:1px solid #DCE3E7;opacity:var(--rv-o,1);transform:translateY(var(--rv-y,0px));transition:opacity .6s ease 0.00s, transform .75s cubic-bezier(.2,.7,.2,1) 0.00s, box-shadow .3s, border-color .3s\" class=\"he16b05b\"><span style=\"display:flex;justify-content:space-between;align-items:center\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:13px;letter-spacing:.1em;color:#E82400\">01<\/span><span aria-hidden=\"true\" style=\"width:10px;height:10px;background:#E82400\"><\/span><\/span><h3 style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:clamp(19px,1.6vw,22px);line-height:1.25;letter-spacing:-.01em;color:#093346;text-wrap:pretty\">\u201cWe retype the same product details for the website, the app and the printed sheet.\u201d<\/h3><span style=\"display:flex;flex-direction:column;gap:6px;margin-top:auto;padding-top:16px;border-top:1px solid #DCE3E7\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:13px;letter-spacing:.2em;font-size:12px;color:#45606F\">WHAT WE DO<\/span><span style=\"font-size:15px;line-height:1.55;color:#2B4A5A\">We design content types once, such as products, locations or events, store them in the CMS, and expose them through an API so the site, the app and signage read from the same entry.<\/span><\/span><span style=\"display:flex;flex-direction:column;gap:6px;padding:14px 16px;background:#F4F7F8;border-left:3px solid #E82400\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:12px;letter-spacing:.2em;color:#45606F\">WHAT CHANGES<\/span><span style=\"font-size:15px;line-height:1.55;font-weight:600;color:#093346\">Fix a price in one place and every screen shows the new one.<\/span><\/span><\/li><li style=\"display:flex;flex-direction:column;gap:18px;padding:clamp(24px,2.4vw,32px);background:#fff;border:1px solid #DCE3E7;opacity:var(--rv-o,1);transform:translateY(var(--rv-y,0px));transition:opacity .6s ease 0.08s, transform .75s cubic-bezier(.2,.7,.2,1) 0.08s, box-shadow .3s, border-color .3s\" class=\"he16b05b\"><span style=\"display:flex;justify-content:space-between;align-items:center\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:13px;letter-spacing:.1em;color:#E82400\">02<\/span><span aria-hidden=\"true\" style=\"width:10px;height:10px;background:#E82400\"><\/span><\/span><h3 style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:clamp(19px,1.6vw,22px);line-height:1.25;letter-spacing:-.01em;color:#093346;text-wrap:pretty\">\u201cOur website crawls under the weight of themes, plugins and page builders.\u201d<\/h3><span style=\"display:flex;flex-direction:column;gap:6px;margin-top:auto;padding-top:16px;border-top:1px solid #DCE3E7\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:13px;letter-spacing:.2em;font-size:12px;color:#45606F\">WHAT WE DO<\/span><span style=\"font-size:15px;line-height:1.55;color:#2B4A5A\">We build a lightweight front end that fetches content from the CMS, pre-builds pages where we can, serves them from a content delivery network, and keeps the editing login away from the public site.<\/span><\/span><span style=\"display:flex;flex-direction:column;gap:6px;padding:14px 16px;background:#F4F7F8;border-left:3px solid #E82400\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:12px;letter-spacing:.2em;color:#45606F\">WHAT CHANGES<\/span><span style=\"font-size:15px;line-height:1.55;font-weight:600;color:#093346\">Pages are served lighter, and the editing login is no longer part of the public site.<\/span><\/span><\/li><li style=\"display:flex;flex-direction:column;gap:18px;padding:clamp(24px,2.4vw,32px);background:#fff;border:1px solid #DCE3E7;opacity:var(--rv-o,1);transform:translateY(var(--rv-y,0px));transition:opacity .6s ease 0.16s, transform .75s cubic-bezier(.2,.7,.2,1) 0.16s, box-shadow .3s, border-color .3s\" class=\"he16b05b\"><span style=\"display:flex;justify-content:space-between;align-items:center\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:13px;letter-spacing:.1em;color:#E82400\">03<\/span><span aria-hidden=\"true\" style=\"width:10px;height:10px;background:#E82400\"><\/span><\/span><h3 style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:clamp(19px,1.6vw,22px);line-height:1.25;letter-spacing:-.01em;color:#093346;text-wrap:pretty\">\u201cEvery redesign means rebuilding our content from scratch, and we dread it.\u201d<\/h3><span style=\"display:flex;flex-direction:column;gap:6px;margin-top:auto;padding-top:16px;border-top:1px solid #DCE3E7\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:13px;letter-spacing:.2em;font-size:12px;color:#45606F\">WHAT WE DO<\/span><span style=\"font-size:15px;line-height:1.55;color:#2B4A5A\">We keep content in clean, structured fields with no layout baked in, so a new front end can be built against the same API while the existing content stays exactly where it is.<\/span><\/span><span style=\"display:flex;flex-direction:column;gap:6px;padding:14px 16px;background:#F4F7F8;border-left:3px solid #E82400\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:12px;letter-spacing:.2em;color:#45606F\">WHAT CHANGES<\/span><span style=\"font-size:15px;line-height:1.55;font-weight:600;color:#093346\">A redesign becomes a new look on existing content, not a long job of retyping.<\/span><\/span><\/li><li style=\"display:flex;flex-direction:column;gap:18px;padding:clamp(24px,2.4vw,32px);background:#fff;border:1px solid #DCE3E7;opacity:var(--rv-o,1);transform:translateY(var(--rv-y,0px));transition:opacity .6s ease 0.24s, transform .75s cubic-bezier(.2,.7,.2,1) 0.24s, box-shadow .3s, border-color .3s\" class=\"he16b05b\"><span style=\"display:flex;justify-content:space-between;align-items:center\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:13px;letter-spacing:.1em;color:#E82400\">04<\/span><span aria-hidden=\"true\" style=\"width:10px;height:10px;background:#E82400\"><\/span><\/span><h3 style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:clamp(19px,1.6vw,22px);line-height:1.25;letter-spacing:-.01em;color:#093346;text-wrap:pretty\">\u201cMy editors publish blind and only see the page once it's live.\u201d<\/h3><span style=\"display:flex;flex-direction:column;gap:6px;margin-top:auto;padding-top:16px;border-top:1px solid #DCE3E7\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:13px;letter-spacing:.2em;font-size:12px;color:#45606F\">WHAT WE DO<\/span><span style=\"font-size:15px;line-height:1.55;color:#2B4A5A\">We connect the CMS to a preview link that renders each draft in the real design, add review and approval roles, and let editors schedule posts ahead of time.<\/span><\/span><span style=\"display:flex;flex-direction:column;gap:6px;padding:14px 16px;background:#F4F7F8;border-left:3px solid #E82400\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:12px;letter-spacing:.2em;color:#45606F\">WHAT CHANGES<\/span><span style=\"font-size:15px;line-height:1.55;font-weight:600;color:#093346\">Editors check their work before anyone else sees it, and publishing stops being a leap of faith.<\/span><\/span><\/li><\/ol>\n    <\/div><\/section>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f04ebcb elementor-widget elementor-widget-aio-service-why\" data-id=\"f04ebcb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"aio-service-why.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<section aria-labelledby=\"sv-why\" style=\"background:#fff;padding:clamp(56px,8vw,120px) clamp(20px,4.5vw,64px)\"><div data-rv=\"ip5\" style=\"max-width:1312px;margin:0 auto;display:flex;flex-wrap:wrap;gap:40px clamp(40px,7vw,112px);align-items:flex-start\">\n      <div data-unpin style=\"flex:1 1 380px;display:flex;flex-direction:column;gap:20px;position:sticky;top:96px;opacity:1;transform:translateY(0px);transition:opacity .7s ease, transform .8s cubic-bezier(.2,.7,.2,1)\"><div style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:13px;letter-spacing:.2em;color:#45606F\">WHY IT MATTERS<\/div><h2 id=\"sv-why\" style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:clamp(32px,4.4vw,64px);line-height:.98;letter-spacing:-.035em;color:#093346;text-wrap:balance\">Content that outlives any single website design.<\/h2><span aria-hidden=\"true\" style=\"width:56px;height:4px;background:#E82400\"><\/span><\/div>\n      <div style=\"flex:1.3 1 460px;display:flex;flex-direction:column;gap:28px\">\n        <p style=\"margin:0;font-size:clamp(17px,1.4vw,20px);line-height:1.65;color:#2B4A5A;text-wrap:pretty;opacity:var(--rv-o,1);transform:translateY(var(--rv-y,0px));transition:opacity .6s ease 0.08s, transform .75s cubic-bezier(.2,.7,.2,1) 0.08s, box-shadow .3s, border-color .3s\">A traditional CMS keeps your words and your design in the same box. That is convenient until you want the same content in a mobile app, a kiosk, a partner site or a redesigned front end, and discover it is tangled up with the layout. A headless CMS stores only the content, in structured fields, and hands it out through an API for anything to display.<\/p><p style=\"margin:0;font-size:clamp(17px,1.4vw,20px);line-height:1.65;color:#2B4A5A;text-wrap:pretty;opacity:var(--rv-o,1);transform:translateY(var(--rv-y,0px));transition:opacity .6s ease 0.16s, transform .75s cubic-bezier(.2,.7,.2,1) 0.16s, box-shadow .3s, border-color .3s\">It is not the right tool for every site, and we say so. A small brochure site is usually better served by WordPress or Webflow. Headless makes sense when several channels share content, when a developer team wants control of the front end, or when editors need a stricter, simpler workflow than a page builder offers. We assess that honestly before recommending a build.<\/p>\n        <div style=\"display:flex;flex-direction:column;gap:0;background:#F4F7F8;padding:clamp(22px,2.4vw,32px)\"><div style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:13px;letter-spacing:.2em;font-size:12px;color:#45606F;padding-bottom:14px;border-bottom:1px solid #DCE3E7\">SIGNS IT'S TIME FOR HELP<\/div><ul style=\"list-style:none;margin:0;padding:0;display:flex;flex-direction:column\"><li style=\"display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;align-items:baseline;padding:14px 0;border-bottom:1px solid #DCE3E7;font-family:Montserrat,MontserratFb;font-weight:700;font-size:16px;line-height:1.4;color:#093346;opacity:var(--rv-o,1);transform:translateY(var(--rv-y,0px));transition:opacity .6s ease 0.16s, transform .75s cubic-bezier(.2,.7,.2,1) 0.16s, box-shadow .3s, border-color .3s\"><span aria-hidden=\"true\" style=\"width:10px;height:10px;border:2px solid #E82400\"><\/span><span>Content is retyped for each channel<\/span><\/li><li style=\"display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;align-items:baseline;padding:14px 0;border-bottom:1px solid #DCE3E7;font-family:Montserrat,MontserratFb;font-weight:700;font-size:16px;line-height:1.4;color:#093346;opacity:var(--rv-o,1);transform:translateY(var(--rv-y,0px));transition:opacity .6s ease 0.24s, transform .75s cubic-bezier(.2,.7,.2,1) 0.24s, box-shadow .3s, border-color .3s\"><span aria-hidden=\"true\" style=\"width:10px;height:10px;border:2px solid #E82400\"><\/span><span>Redesigns mean migrating everything again<\/span><\/li><li style=\"display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;align-items:baseline;padding:14px 0;border-bottom:1px solid #DCE3E7;font-family:Montserrat,MontserratFb;font-weight:700;font-size:16px;line-height:1.4;color:#093346;opacity:var(--rv-o,1);transform:translateY(var(--rv-y,0px));transition:opacity .6s ease 0.32s, transform .75s cubic-bezier(.2,.7,.2,1) 0.32s, box-shadow .3s, border-color .3s\"><span aria-hidden=\"true\" style=\"width:10px;height:10px;border:2px solid #E82400\"><\/span><span>Editors cannot preview before publishing<\/span><\/li><\/ul><\/div>\n      <\/div>\n    <\/div><\/section>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c715807 elementor-widget elementor-widget-aio-service-benefits\" data-id=\"c715807\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"aio-service-benefits.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<section aria-labelledby=\"sv-ben\" style=\"background:#fff;padding:clamp(56px,8vw,120px) clamp(20px,4.5vw,64px)\"><div data-rv=\"ip6\" style=\"max-width:1312px;margin:0 auto;display:flex;flex-direction:column;gap:clamp(32px,4vw,56px)\">\n      <div style=\"display:flex;flex-wrap:wrap;gap:20px 64px;justify-content:space-between;align-items:flex-end\"><div style=\"display:flex;flex-direction:column;gap:16px\"><div style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:13px;letter-spacing:.2em;color:#45606F\">BENEFITS<\/div><h2 id=\"sv-ben\" style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:clamp(30px,3.6vw,52px);line-height:1;letter-spacing:-.03em;color:#093346\">What a headless CMS can do for your business<\/h2><\/div><p style=\"margin:0;max-width:420px;font-size:17px;line-height:1.6;color:#2B4A5A\">How things look once the marketing is done right.<\/p><\/div>\n      <ol style=\"list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:0 40px;border-top:2px solid #093346\"><li style=\"display:flex;flex-direction:column;gap:12px;padding:28px 0;border-bottom:1px solid #DCE3E7;opacity:var(--rv-o,1);transform:translateY(var(--rv-y,0px));transition:opacity .6s ease 0.00s, transform .75s cubic-bezier(.2,.7,.2,1) 0.00s, box-shadow .3s, border-color .3s\"><span style=\"display:flex;align-items:center;gap:12px\"><span style=\"width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#E82400;color:#fff;font-family:Montserrat,MontserratFb;font-weight:800;font-size:16px\" aria-hidden=\"true\">\u2713<\/span><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:13px;letter-spacing:.1em;color:#45606F\">01<\/span><\/span><h3 style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:clamp(20px,1.7vw,24px);line-height:1.2;letter-spacing:-.01em;color:#093346\">One source of truth<\/h3><p style=\"margin:0;font-size:16px;line-height:1.6;color:#2B4A5A\">Products, events and pages are kept in a single place and shared by every channel, which cuts duplicate typing and contradictory information.<\/p><\/li><li style=\"display:flex;flex-direction:column;gap:12px;padding:28px 0;border-bottom:1px solid #DCE3E7;opacity:var(--rv-o,1);transform:translateY(var(--rv-y,0px));transition:opacity .6s ease 0.08s, transform .75s cubic-bezier(.2,.7,.2,1) 0.08s, box-shadow .3s, border-color .3s\"><span style=\"display:flex;align-items:center;gap:12px\"><span style=\"width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#E82400;color:#fff;font-family:Montserrat,MontserratFb;font-weight:800;font-size:16px\" aria-hidden=\"true\">\u2713<\/span><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:13px;letter-spacing:.1em;color:#45606F\">02<\/span><\/span><h3 style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:clamp(20px,1.7vw,24px);line-height:1.2;letter-spacing:-.01em;color:#093346\">Freedom to redesign<\/h3><p style=\"margin:0;font-size:16px;line-height:1.6;color:#2B4A5A\">Because content lives apart from the design, you can refresh the look or change technology later without migrating everything again.<\/p><\/li><li style=\"display:flex;flex-direction:column;gap:12px;padding:28px 0;border-bottom:1px solid #DCE3E7;opacity:var(--rv-o,1);transform:translateY(var(--rv-y,0px));transition:opacity .6s ease 0.16s, transform .75s cubic-bezier(.2,.7,.2,1) 0.16s, box-shadow .3s, border-color .3s\"><span style=\"display:flex;align-items:center;gap:12px\"><span style=\"width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#E82400;color:#fff;font-family:Montserrat,MontserratFb;font-weight:800;font-size:16px\" aria-hidden=\"true\">\u2713<\/span><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:13px;letter-spacing:.1em;color:#45606F\">03<\/span><\/span><h3 style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:clamp(20px,1.7vw,24px);line-height:1.2;letter-spacing:-.01em;color:#093346\">Pages that load lighter<\/h3><p style=\"margin:0;font-size:16px;line-height:1.6;color:#2B4A5A\">A purpose-built front end ships only the code each page needs, which can help visitors on slow mobile connections outside the larger towns.<\/p><\/li><li style=\"display:flex;flex-direction:column;gap:12px;padding:28px 0;border-bottom:1px solid #DCE3E7;opacity:var(--rv-o,1);transform:translateY(var(--rv-y,0px));transition:opacity .6s ease 0.24s, transform .75s cubic-bezier(.2,.7,.2,1) 0.24s, box-shadow .3s, border-color .3s\"><span style=\"display:flex;align-items:center;gap:12px\"><span style=\"width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#E82400;color:#fff;font-family:Montserrat,MontserratFb;font-weight:800;font-size:16px\" aria-hidden=\"true\">\u2713<\/span><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:13px;letter-spacing:.1em;color:#45606F\">04<\/span><\/span><h3 style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:clamp(20px,1.7vw,24px);line-height:1.2;letter-spacing:-.01em;color:#093346\">Safer editing and publishing<\/h3><p style=\"margin:0;font-size:16px;line-height:1.6;color:#2B4A5A\">Roles, drafts, previews and approvals give a growing team a clear path from idea to published page, with a history of changes.<\/p><\/li><\/ol>\n    <\/div><\/section>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d3446a3 elementor-widget elementor-widget-aio-service-includes\" data-id=\"d3446a3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"aio-service-includes.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<section aria-labelledby=\"sv-inc\" style=\"background:#fff;padding:clamp(56px,8vw,120px) clamp(20px,4.5vw,64px)\"><div style=\"max-width:1312px;margin:0 auto;display:flex;flex-wrap:wrap;gap:32px clamp(40px,6vw,96px)\">\n      <div style=\"flex:1 1 300px;display:flex;flex-direction:column;gap:16px\"><div style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:13px;letter-spacing:.2em;color:#45606F\">WHAT\u2019S INCLUDED<\/div><h2 id=\"sv-inc\" style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:clamp(30px,3.6vw,52px);line-height:1;letter-spacing:-.03em;color:#093346\">Inside a headless CMS build from our team<\/h2><\/div>\n      <ol style=\"flex:2 1 560px;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:0 40px;border-top:1px solid #093346\"><li style=\"display:flex;gap:20px;align-items:baseline;padding:20px 0;border-bottom:1px solid #DCE3E7\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:13px;color:#E82400\">01<\/span><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:18px;line-height:1.35;color:#093346\">Content modelling workshop<\/span><\/li><li style=\"display:flex;gap:20px;align-items:baseline;padding:20px 0;border-bottom:1px solid #DCE3E7\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:13px;color:#E82400\">02<\/span><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:18px;line-height:1.35;color:#093346\">CMS selection and setup<\/span><\/li><li style=\"display:flex;gap:20px;align-items:baseline;padding:20px 0;border-bottom:1px solid #DCE3E7\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:13px;color:#E82400\">03<\/span><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:18px;line-height:1.35;color:#093346\">API and front-end build<\/span><\/li><li style=\"display:flex;gap:20px;align-items:baseline;padding:20px 0;border-bottom:1px solid #DCE3E7\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:13px;color:#E82400\">04<\/span><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:18px;line-height:1.35;color:#093346\">Draft preview for editors<\/span><\/li><li style=\"display:flex;gap:20px;align-items:baseline;padding:20px 0;border-bottom:1px solid #DCE3E7\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:13px;color:#E82400\">05<\/span><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:18px;line-height:1.35;color:#093346\">Roles and approval workflow<\/span><\/li><li style=\"display:flex;gap:20px;align-items:baseline;padding:20px 0;border-bottom:1px solid #DCE3E7\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:13px;color:#E82400\">06<\/span><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:18px;line-height:1.35;color:#093346\">Hosting on a delivery network<\/span><\/li><li style=\"display:flex;gap:20px;align-items:baseline;padding:20px 0;border-bottom:1px solid #DCE3E7\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:13px;color:#E82400\">07<\/span><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:18px;line-height:1.35;color:#093346\">Editor training and handover<\/span><\/li><\/ol>\n    <\/div><\/section>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7456b40 elementor-widget elementor-widget-aio-service-tech\" data-id=\"7456b40\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"aio-service-tech.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<section aria-labelledby=\"sv-tech\" style=\"background:#093346;color:#fff;padding:clamp(56px,8vw,112px) clamp(20px,4.5vw,64px)\"><div style=\"max-width:1312px;margin:0 auto;display:flex;flex-direction:column;gap:clamp(40px,5vw,64px)\">\n      <div style=\"display:flex;flex-wrap:wrap;gap:24px clamp(40px,6vw,96px);align-items:flex-start\">\n        <div style=\"flex:1 1 300px;display:flex;flex-direction:column;gap:16px\"><div style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:13px;letter-spacing:.2em;color:#9FB3BE\">TECHNOLOGY<\/div><h2 id=\"sv-tech\" style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:clamp(30px,3.6vw,52px);line-height:1;letter-spacing:-.03em;color:#fff\">The tools in our toolkit.<\/h2><\/div>\n        <ul style=\"flex:2 1 520px;list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px;align-content:flex-start\"><li style=\"display:flex;align-items:center;gap:10px;min-height:48px;padding:0 18px;border:1px solid rgba(228,233,236,.3);font-family:Montserrat,MontserratFb;font-weight:700;font-size:15px;color:#fff;transition:border-color .2s, background .2s\" class=\"had152b4\"><span aria-hidden=\"true\" style=\"width:6px;height:6px;background:#E82400\"><\/span>Sanity<\/li><li style=\"display:flex;align-items:center;gap:10px;min-height:48px;padding:0 18px;border:1px solid rgba(228,233,236,.3);font-family:Montserrat,MontserratFb;font-weight:700;font-size:15px;color:#fff;transition:border-color .2s, background .2s\" class=\"had152b4\"><span aria-hidden=\"true\" style=\"width:6px;height:6px;background:#E82400\"><\/span>Contentful<\/li><li style=\"display:flex;align-items:center;gap:10px;min-height:48px;padding:0 18px;border:1px solid rgba(228,233,236,.3);font-family:Montserrat,MontserratFb;font-weight:700;font-size:15px;color:#fff;transition:border-color .2s, background .2s\" class=\"had152b4\"><span aria-hidden=\"true\" style=\"width:6px;height:6px;background:#E82400\"><\/span>Strapi<\/li><li style=\"display:flex;align-items:center;gap:10px;min-height:48px;padding:0 18px;border:1px solid rgba(228,233,236,.3);font-family:Montserrat,MontserratFb;font-weight:700;font-size:15px;color:#fff;transition:border-color .2s, background .2s\" class=\"had152b4\"><span aria-hidden=\"true\" style=\"width:6px;height:6px;background:#E82400\"><\/span>Next.js<\/li><li style=\"display:flex;align-items:center;gap:10px;min-height:48px;padding:0 18px;border:1px solid rgba(228,233,236,.3);font-family:Montserrat,MontserratFb;font-weight:700;font-size:15px;color:#fff;transition:border-color .2s, background .2s\" class=\"had152b4\"><span aria-hidden=\"true\" style=\"width:6px;height:6px;background:#E82400\"><\/span>GraphQL<\/li><li style=\"display:flex;align-items:center;gap:10px;min-height:48px;padding:0 18px;border:1px solid rgba(228,233,236,.3);font-family:Montserrat,MontserratFb;font-weight:700;font-size:15px;color:#fff;transition:border-color .2s, background .2s\" class=\"had152b4\"><span aria-hidden=\"true\" style=\"width:6px;height:6px;background:#E82400\"><\/span>Vercel<\/li><\/ul>\n      <\/div>\n      <div style=\"display:flex;flex-direction:column;gap:20px;border-top:1px solid rgba(228,233,236,.2);padding-top:clamp(32px,4vw,48px)\"><div style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:13px;letter-spacing:.2em;color:#9FB3BE\">HOW YOU CAN WORK WITH US<\/div>\n        <ol style=\"list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px\"><li style=\"display:flex;flex-direction:column;gap:12px;padding:28px;background:rgba(255,255,255,.04);border:1px solid rgba(228,233,236,.2);transition:border-color .2s, transform .25s\" class=\"h6231148\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:300;font-size:34px;line-height:1;color:#9FB3BE\">01<\/span><span style=\"font-family:Montserrat,MontserratFb;font-weight:800;font-size:21px;color:#fff\">Fixed-scope project<\/span><span style=\"font-size:15px;line-height:1.55;color:#E4E9EC\">Scope, schedule and price set up front. Suits MVPs, websites and builds with clear requirements.<\/span><\/li><li style=\"display:flex;flex-direction:column;gap:12px;padding:28px;background:rgba(255,255,255,.04);border:1px solid rgba(228,233,236,.2);transition:border-color .2s, transform .25s\" class=\"h6231148\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:300;font-size:34px;line-height:1;color:#9FB3BE\">02<\/span><span style=\"font-family:Montserrat,MontserratFb;font-weight:800;font-size:21px;color:#fff\">Dedicated team<\/span><span style=\"font-size:15px;line-height:1.55;color:#E4E9EC\">Developers, designers and testers join your team on a monthly arrangement.<\/span><\/li><li style=\"display:flex;flex-direction:column;gap:12px;padding:28px;background:rgba(255,255,255,.04);border:1px solid rgba(228,233,236,.2);transition:border-color .2s, transform .25s\" class=\"h6231148\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:300;font-size:34px;line-height:1;color:#9FB3BE\">03<\/span><span style=\"font-family:Montserrat,MontserratFb;font-weight:800;font-size:21px;color:#fff\">Support retainer<\/span><span style=\"font-size:15px;line-height:1.55;color:#E4E9EC\">Regular upkeep, upgrades and improvements, with response times agreed in advance.<\/span><\/li><\/ol>\n      <\/div>\n    <\/div><\/section>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2218db2 elementor-widget elementor-widget-aio-service-steps\" data-id=\"2218db2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"aio-service-steps.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<section aria-labelledby=\"sv-how\" style=\"background:#093346;color:#fff;padding:clamp(56px,8vw,120px) clamp(20px,4.5vw,64px)\"><div data-rv=\"ip2\" style=\"max-width:1312px;margin:0 auto;display:flex;flex-direction:column;gap:clamp(32px,4vw,56px)\"><div style=\"display:flex;flex-wrap:wrap;gap:20px 64px;justify-content:space-between;align-items:flex-end\"><div style=\"display:flex;flex-direction:column;gap:16px\"><div style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:13px;letter-spacing:.2em;color:#9FB3BE\">HOW WE WORK<\/div><h2 id=\"sv-how\" style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:clamp(30px,3.6vw,52px);line-height:1;letter-spacing:-.03em;color:#fff\">Our headless CMS process, step by step<\/h2><\/div><a href=\"\/abbotsford\/#process\" style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:14px;letter-spacing:.06em;color:#fff;border-bottom:1px solid #fff;padding:8px 0 4px;text-decoration:none\">OUR PROCESS \u2192<\/a><\/div>\n      <ol style=\"list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:32px 32px\"><li style=\"display:flex;flex-direction:column;gap:14px;opacity:var(--rv-o,1);transform:translateY(var(--rv-y,0px));transition:opacity .6s ease 0.00s, transform .75s cubic-bezier(.2,.7,.2,1) 0.00s, box-shadow .3s, border-color .3s\"><span aria-hidden=\"true\" style=\"display:block;height:2px;background:rgba(228,233,236,.2)\"><span style=\"display:block;height:100%;background:#E82400;transform:scaleX(1);transform-origin:left;transition:transform 1s cubic-bezier(.7,0,.2,1) 0.00s\"><\/span><\/span><span style=\"font-family:Montserrat,MontserratFb;font-weight:300;font-size:44px;line-height:1;letter-spacing:-.04em;color:#9FB3BE\">01<\/span><h3 style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:22px;letter-spacing:-.01em;color:#fff\">Discover<\/h3><p style=\"margin:0;font-size:15px;line-height:1.6;color:#E4E9EC\">We sit down with you to learn your goals, customers and limits, then hand back a written scope and estimate.<\/p><\/li><li style=\"display:flex;flex-direction:column;gap:14px;opacity:var(--rv-o,1);transform:translateY(var(--rv-y,0px));transition:opacity .6s ease 0.15s, transform .75s cubic-bezier(.2,.7,.2,1) 0.15s, box-shadow .3s, border-color .3s\"><span aria-hidden=\"true\" style=\"display:block;height:2px;background:rgba(228,233,236,.2)\"><span style=\"display:block;height:100%;background:#E82400;transform:scaleX(1);transform-origin:left;transition:transform 1s cubic-bezier(.7,0,.2,1) 0.15s\"><\/span><\/span><span style=\"font-family:Montserrat,MontserratFb;font-weight:300;font-size:44px;line-height:1;letter-spacing:-.04em;color:#9FB3BE\">02<\/span><h3 style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:22px;letter-spacing:-.01em;color:#fff\">Design<\/h3><p style=\"margin:0;font-size:15px;line-height:1.6;color:#E4E9EC\">Screen flows, wireframes and clickable mockups get tested with real users before any code is written.<\/p><\/li><li style=\"display:flex;flex-direction:column;gap:14px;opacity:var(--rv-o,1);transform:translateY(var(--rv-y,0px));transition:opacity .6s ease 0.30s, transform .75s cubic-bezier(.2,.7,.2,1) 0.30s, box-shadow .3s, border-color .3s\"><span aria-hidden=\"true\" style=\"display:block;height:2px;background:rgba(228,233,236,.2)\"><span style=\"display:block;height:100%;background:#E82400;transform:scaleX(1);transform-origin:left;transition:transform 1s cubic-bezier(.7,0,.2,1) 0.30s\"><\/span><\/span><span style=\"font-family:Montserrat,MontserratFb;font-weight:300;font-size:44px;line-height:1;letter-spacing:-.04em;color:#9FB3BE\">03<\/span><h3 style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:22px;letter-spacing:-.01em;color:#fff\">Build &amp; test<\/h3><p style=\"margin:0;font-size:15px;line-height:1.6;color:#E4E9EC\">Two-week build cycles that end in a working demo, backed by code reviews and automated tests.<\/p><\/li><li style=\"display:flex;flex-direction:column;gap:14px;opacity:var(--rv-o,1);transform:translateY(var(--rv-y,0px));transition:opacity .6s ease 0.45s, transform .75s cubic-bezier(.2,.7,.2,1) 0.45s, box-shadow .3s, border-color .3s\"><span aria-hidden=\"true\" style=\"display:block;height:2px;background:rgba(228,233,236,.2)\"><span style=\"display:block;height:100%;background:#E82400;transform:scaleX(1);transform-origin:left;transition:transform 1s cubic-bezier(.7,0,.2,1) 0.45s\"><\/span><\/span><span style=\"font-family:Montserrat,MontserratFb;font-weight:300;font-size:44px;line-height:1;letter-spacing:-.04em;color:#9FB3BE\">04<\/span><h3 style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:22px;letter-spacing:-.01em;color:#fff\">Launch &amp; support<\/h3><p style=\"margin:0;font-size:15px;line-height:1.6;color:#E4E9EC\">A phased launch, live monitoring, team training and support that continues as you grow.<\/p><\/li><\/ol>\n    <\/div><\/section>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1093081 elementor-widget elementor-widget-aio-service-cases\" data-id=\"1093081\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"aio-service-cases.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<section aria-labelledby=\"sv-cs\" style=\"background:#fff;padding:clamp(56px,8vw,120px) clamp(20px,4.5vw,64px)\"><div data-rv=\"ip3\" style=\"max-width:1312px;margin:0 auto;display:flex;flex-direction:column;gap:clamp(32px,4vw,48px)\"><div style=\"display:flex;flex-wrap:wrap;gap:20px 64px;justify-content:space-between;align-items:flex-end\"><div style=\"display:flex;flex-direction:column;gap:16px\"><div style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:13px;letter-spacing:.2em;color:#45606F\">RELATED CASE STUDIES<\/div><h2 id=\"sv-cs\" style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:clamp(30px,3.6vw,52px);line-height:1;letter-spacing:-.03em;color:#093346\">Related client results: headless CMS<\/h2><\/div><a href=\"\/abbotsford\/case-studies\/\" style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:14px;color:#093346;text-decoration:none;border-bottom:1px solid #093346;padding:8px 0 4px\">Browse every case study \u2192<\/a><\/div>\n      <ul style=\"list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:16px\"><li style=\"display:flex\"><a href=\"\/abbotsford\/case-studies\/bc-blueberry-council-portal\/\" style=\"flex:1;display:flex;flex-direction:column;background:#fff;border:1px solid #DCE3E7;text-decoration:none;color:#093346;opacity:var(--rv-o,1);transform:translateY(var(--rv-y,0px));transition:opacity .6s ease 0.00s, transform .75s cubic-bezier(.2,.7,.2,1) 0.00s, box-shadow .3s, border-color .3s\" class=\"ha3c6055\">\n        <span style=\"position:relative;display:block;aspect-ratio:16\/10;overflow:hidden;background:#C5D0D6;border-bottom:1px solid #DCE3E7\"><img decoding=\"async\" srcset=\"https:\/\/allinonemarketingpro.com\/abbotsford\/wp-content\/uploads\/2026\/10\/case-bc-blueberry-council-portal.jpg 1600w, https:\/\/allinonemarketingpro.com\/abbotsford\/wp-content\/uploads\/2026\/10\/case-bc-blueberry-council-portal-300x200.jpg 300w, https:\/\/allinonemarketingpro.com\/abbotsford\/wp-content\/uploads\/2026\/10\/case-bc-blueberry-council-portal-1024x682.jpg 1024w, https:\/\/allinonemarketingpro.com\/abbotsford\/wp-content\/uploads\/2026\/10\/case-bc-blueberry-council-portal-768x512.jpg 768w, https:\/\/allinonemarketingpro.com\/abbotsford\/wp-content\/uploads\/2026\/10\/case-bc-blueberry-council-portal-1536x1023.jpg 1536w\" sizes=\"(max-width: 1600px) 100vw, 1600px\" src=\"https:\/\/allinonemarketingpro.com\/abbotsford\/wp-content\/uploads\/2026\/10\/case-bc-blueberry-council-portal.jpg\" alt=\"BC Blueberry Council\" loading=\"lazy\" style=\"position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.7,.2,1)\"><\/span>\n        <span style=\"display:flex;flex-direction:column;gap:12px;padding:24px;flex:1\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:13px;letter-spacing:.2em;font-size:12px;color:#45606F\">COUNCIL \/ GOVERNMENT<\/span><span style=\"font-family:Montserrat,MontserratFb;font-weight:800;font-size:22px;line-height:1.15;letter-spacing:-.02em\">BC Blueberry Council<\/span>\n          <span style=\"display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-top:auto;padding-top:16px;border-top:1px solid #DCE3E7\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:800;font-size:40px;line-height:1;letter-spacing:-.03em;color:#093346\">21M<\/span><span style=\"font-size:14px;line-height:1.4;color:#45606F\">Global reach in five months<\/span><\/span>\n          \n          <span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:13px;letter-spacing:.08em;color:#E82400\">SEE THE FULL CASE STUDY \u2192<\/span><\/span>\n      <\/a><\/li><li style=\"display:flex\"><a href=\"\/abbotsford\/case-studies\/cream-energy-group\/\" style=\"flex:1;display:flex;flex-direction:column;background:#fff;border:1px solid #DCE3E7;text-decoration:none;color:#093346;opacity:var(--rv-o,1);transform:translateY(var(--rv-y,0px));transition:opacity .6s ease 0.08s, transform .75s cubic-bezier(.2,.7,.2,1) 0.08s, box-shadow .3s, border-color .3s\" class=\"ha3c6055\">\n        <span style=\"position:relative;display:block;aspect-ratio:16\/10;overflow:hidden;background:#C5D0D6;border-bottom:1px solid #DCE3E7\"><img decoding=\"async\" srcset=\"https:\/\/allinonemarketingpro.com\/abbotsford\/wp-content\/uploads\/2026\/10\/case-cream-energy-group.jpg 1600w, https:\/\/allinonemarketingpro.com\/abbotsford\/wp-content\/uploads\/2026\/10\/case-cream-energy-group-300x225.jpg 300w, https:\/\/allinonemarketingpro.com\/abbotsford\/wp-content\/uploads\/2026\/10\/case-cream-energy-group-1024x768.jpg 1024w, https:\/\/allinonemarketingpro.com\/abbotsford\/wp-content\/uploads\/2026\/10\/case-cream-energy-group-768x576.jpg 768w, https:\/\/allinonemarketingpro.com\/abbotsford\/wp-content\/uploads\/2026\/10\/case-cream-energy-group-1536x1152.jpg 1536w\" sizes=\"(max-width: 1600px) 100vw, 1600px\" src=\"https:\/\/allinonemarketingpro.com\/abbotsford\/wp-content\/uploads\/2026\/10\/case-cream-energy-group.jpg\" alt=\"Cream Energy Group (CEG)\" loading=\"lazy\" style=\"position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.7,.2,1)\"><\/span>\n        <span style=\"display:flex;flex-direction:column;gap:12px;padding:24px;flex:1\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:13px;letter-spacing:.2em;font-size:12px;color:#45606F\">OILFIELD &amp; ENERGY SERVICES<\/span><span style=\"font-family:Montserrat,MontserratFb;font-weight:800;font-size:22px;line-height:1.15;letter-spacing:-.02em\">Cream Energy Group (CEG)<\/span>\n          <span style=\"display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-top:auto;padding-top:16px;border-top:1px solid #DCE3E7\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:800;font-size:40px;line-height:1;letter-spacing:-.03em;color:#093346\">$200 \u2192 $40<\/span><span style=\"font-size:14px;line-height:1.4;color:#45606F\">Conversion cost<\/span><\/span>\n          \n          <span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:13px;letter-spacing:.08em;color:#E82400\">SEE THE FULL CASE STUDY \u2192<\/span><\/span>\n      <\/a><\/li><li style=\"display:flex\"><a href=\"\/abbotsford\/case-studies\/la-vie\/\" style=\"flex:1;display:flex;flex-direction:column;background:#fff;border:1px solid #DCE3E7;text-decoration:none;color:#093346;opacity:var(--rv-o,1);transform:translateY(var(--rv-y,0px));transition:opacity .6s ease 0.16s, transform .75s cubic-bezier(.2,.7,.2,1) 0.16s, box-shadow .3s, border-color .3s\" class=\"ha3c6055\">\n        <span style=\"position:relative;display:block;aspect-ratio:16\/10;overflow:hidden;background:#C5D0D6;border-bottom:1px solid #DCE3E7\"><img decoding=\"async\" srcset=\"https:\/\/allinonemarketingpro.com\/abbotsford\/wp-content\/uploads\/2026\/10\/case-la-vie.jpg 1600w, https:\/\/allinonemarketingpro.com\/abbotsford\/wp-content\/uploads\/2026\/10\/case-la-vie-300x200.jpg 300w, https:\/\/allinonemarketingpro.com\/abbotsford\/wp-content\/uploads\/2026\/10\/case-la-vie-1024x683.jpg 1024w, https:\/\/allinonemarketingpro.com\/abbotsford\/wp-content\/uploads\/2026\/10\/case-la-vie-768x512.jpg 768w, https:\/\/allinonemarketingpro.com\/abbotsford\/wp-content\/uploads\/2026\/10\/case-la-vie-1536x1024.jpg 1536w\" sizes=\"(max-width: 1600px) 100vw, 1600px\" src=\"https:\/\/allinonemarketingpro.com\/abbotsford\/wp-content\/uploads\/2026\/10\/case-la-vie.jpg\" alt=\"La Vie Executive Health Centre\" loading=\"lazy\" style=\"position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.7,.2,1)\"><\/span>\n        <span style=\"display:flex;flex-direction:column;gap:12px;padding:24px;flex:1\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:13px;letter-spacing:.2em;font-size:12px;color:#45606F\">HEALTHCARE<\/span><span style=\"font-family:Montserrat,MontserratFb;font-weight:800;font-size:22px;line-height:1.15;letter-spacing:-.02em\">La Vie Executive Health Centre<\/span>\n          <span style=\"display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-top:auto;padding-top:16px;border-top:1px solid #DCE3E7\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:800;font-size:40px;line-height:1;letter-spacing:-.03em;color:#093346\">85%+<\/span><span style=\"font-size:14px;line-height:1.4;color:#45606F\">Appointment bookings growth<\/span><\/span>\n          \n          <span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:13px;letter-spacing:.08em;color:#E82400\">SEE THE FULL CASE STUDY \u2192<\/span><\/span>\n      <\/a><\/li><\/ul>\n    <\/div><\/section>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b0f1c05 elementor-widget elementor-widget-aio-service-reviews\" data-id=\"b0f1c05\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"aio-service-reviews.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<section aria-labelledby=\"sv-rv\" style=\"background:#F4F7F8;padding:clamp(56px,8vw,120px) clamp(20px,4.5vw,64px)\"><div data-rv=\"ip4\" style=\"max-width:1312px;margin:0 auto;display:flex;flex-direction:column;gap:clamp(32px,4vw,48px)\"><div style=\"display:flex;flex-wrap:wrap;gap:20px 64px;justify-content:space-between;align-items:flex-end\"><div style=\"display:flex;flex-direction:column;gap:16px\"><div style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:13px;letter-spacing:.2em;color:#45606F\">CLIENT REVIEWS<\/div><h2 id=\"sv-rv\" style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:clamp(30px,3.6vw,52px);line-height:1;letter-spacing:-.03em;color:#093346\">What clients say<\/h2><\/div><div style=\"display:flex;flex-wrap:wrap;gap:8px\"><span style=\"display:flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border:1px solid #DCE3E7;background:#fff;color:#093346\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:800;font-size:14px\">Clutch<\/span><span aria-hidden=\"true\" style=\"color:#E82400;font-size:12px;letter-spacing:1px\">\u2605\u2605\u2605\u2605\u2605<\/span><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:14px\">5.0<\/span><\/span><span style=\"display:flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border:1px solid #DCE3E7;background:#fff;color:#093346\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:800;font-size:14px\">Google<\/span><span aria-hidden=\"true\" style=\"color:#E82400;font-size:12px;letter-spacing:1px\">\u2605\u2605\u2605\u2605\u2605<\/span><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:14px\">5.0<\/span><\/span><\/div><\/div>\n      <ul style=\"list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px\"><li style=\"display:flex\"><figure style=\"flex:1;margin:0;display:flex;flex-direction:column;gap:18px;padding:clamp(24px,2.6vw,36px);background:#fff;border:1px solid #DCE3E7;opacity:var(--rv-o,1);transform:translateY(var(--rv-y,0px));transition:opacity .6s ease 0.00s, transform .75s cubic-bezier(.2,.7,.2,1) 0.00s, box-shadow .3s, border-color .3s\"><span aria-hidden=\"true\" style=\"color:#E82400;font-size:14px;letter-spacing:2px\">\u2605\u2605\u2605\u2605\u2605<\/span><blockquote style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:600;font-size:clamp(17px,1.4vw,19px);line-height:1.5;color:#093346;text-wrap:pretty\">\u201cAll In One Marketing Pro was incredibly organized and easy to work with.\u201d<\/blockquote><figcaption style=\"margin-top:auto;padding-top:16px;border-top:1px solid #DCE3E7;display:flex;flex-direction:column;gap:2px\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:15px;color:#093346\">Owner &amp; Medical Aesthetician \u00b7 Clutch review, Apr 11, 2025<\/span><span style=\"font-size:14px;color:#45606F\">RB Makeup, Medical Spa &amp; Laser Hair Removal<\/span><\/figcaption><\/figure><\/li><li style=\"display:flex\"><figure style=\"flex:1;margin:0;display:flex;flex-direction:column;gap:18px;padding:clamp(24px,2.6vw,36px);background:#fff;border:1px solid #DCE3E7;opacity:var(--rv-o,1);transform:translateY(var(--rv-y,0px));transition:opacity .6s ease 0.12s, transform .75s cubic-bezier(.2,.7,.2,1) 0.12s, box-shadow .3s, border-color .3s\"><span aria-hidden=\"true\" style=\"color:#E82400;font-size:14px;letter-spacing:2px\">\u2605\u2605\u2605\u2605\u2605<\/span><blockquote style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:600;font-size:clamp(17px,1.4vw,19px);line-height:1.5;color:#093346;text-wrap:pretty\">\u201cWhat impressed us most was their personalized approach and deep understanding of our industry.\u201d<\/blockquote><figcaption style=\"margin-top:auto;padding-top:16px;border-top:1px solid #DCE3E7;display:flex;flex-direction:column;gap:2px\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:15px;color:#093346\">Ryan Scott, Marketing Expert \u00b7 Clutch review, Apr 10, 2025<\/span><span style=\"font-size:14px;color:#45606F\">Abbotsford Fraser Denture Clinic<\/span><\/figcaption><\/figure><\/li><li style=\"display:flex\"><figure style=\"flex:1;margin:0;display:flex;flex-direction:column;gap:18px;padding:clamp(24px,2.6vw,36px);background:#fff;border:1px solid #DCE3E7;opacity:var(--rv-o,1);transform:translateY(var(--rv-y,0px));transition:opacity .6s ease 0.24s, transform .75s cubic-bezier(.2,.7,.2,1) 0.24s, box-shadow .3s, border-color .3s\"><span aria-hidden=\"true\" style=\"color:#E82400;font-size:14px;letter-spacing:2px\">\u2605\u2605\u2605\u2605\u2605<\/span><blockquote style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:600;font-size:clamp(17px,1.4vw,19px);line-height:1.5;color:#093346;text-wrap:pretty\">\u201cThey were responsive to our needs, making arrangements as needed.\u201d<\/blockquote><figcaption style=\"margin-top:auto;padding-top:16px;border-top:1px solid #DCE3E7;display:flex;flex-direction:column;gap:2px\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:15px;color:#093346\">Shira Santos, Marketing Manager \u00b7 Clutch review, Feb 3, 2025<\/span><span style=\"font-size:14px;color:#45606F\">BugXen Pest Control Services<\/span><\/figcaption><\/figure><\/li><\/ul>\n    <p style=\"margin:0;font-size:14px;line-height:1.55;color:#45606F\">Each review is quoted as the client wrote it. Results depend on your market, your budget and where you start.<\/p><\/div><\/section>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c28a305 elementor-widget elementor-widget-aio-service-compare\" data-id=\"c28a305\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"aio-service-compare.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<section aria-labelledby=\"sv-cmp\" style=\"background:#F4F7F8;padding:clamp(56px,8vw,112px) clamp(20px,4.5vw,64px)\"><div style=\"max-width:1312px;margin:0 auto;display:flex;flex-wrap:wrap;gap:32px clamp(40px,6vw,96px)\">\n      <div style=\"flex:1 1 300px;display:flex;flex-direction:column;gap:16px\"><div style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:13px;letter-spacing:.2em;color:#45606F\">COMPARISON<\/div><h2 id=\"sv-cmp\" style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:clamp(30px,3.6vw,52px);line-height:1;letter-spacing:-.03em;color:#093346\">Headless CMS Development, with our help or on your own.<\/h2><a href=\"\/abbotsford\/#compare\" style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:15px;color:#093346;border-bottom:1px solid #093346;padding:8px 0 4px;min-height:44px;display:inline-flex;align-items:flex-end;align-self:flex-start;text-decoration:none\">Full comparison \u2192<\/a><\/div>\n      <div style=\"flex:2 1 560px;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-top:2px solid #093346;background:#fff\">\n        <span style=\"padding:16px 18px;background:#093346;color:#fff;font-family:Montserrat,MontserratFb;font-weight:800;font-size:15px;display:flex;gap:10px;align-items:center\"><span aria-hidden=\"true\" style=\"width:10px;height:10px;background:#E82400;flex:none\"><\/span>With our team<\/span>\n        <span style=\"padding:16px 18px;font-family:Montserrat,MontserratFb;font-weight:700;font-size:15px;color:#45606F;border-bottom:1px solid #DCE3E7\">Without<\/span>\n        \n          <span style=\"padding:18px;background:#093346;border-top:1px solid rgba(228,233,236,.14);display:flex;gap:12px;align-items:flex-start;color:#fff;font-size:15px;line-height:1.45;font-weight:600\"><span aria-hidden=\"true\" style=\"flex:none;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#E82400;color:#fff;font-weight:800;font-size:12px\">\u2713<\/span>One connected team<\/span>\n          <span style=\"padding:18px;border-bottom:1px solid #DCE3E7;display:flex;gap:12px;align-items:flex-start;color:#45606F;font-size:15px;line-height:1.45\"><span aria-hidden=\"true\" style=\"flex:none;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:1.5px solid #9FB0BA;color:#9FB0BA;font-weight:800;font-size:12px\">\u2715<\/span>Several vendors<\/span>\n        \n          <span style=\"padding:18px;background:#093346;border-top:1px solid rgba(228,233,236,.14);display:flex;gap:12px;align-items:flex-start;color:#fff;font-size:15px;line-height:1.45;font-weight:600\"><span aria-hidden=\"true\" style=\"flex:none;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#E82400;color:#fff;font-weight:800;font-size:12px\">\u2713<\/span>A free audit, then a clear plan<\/span>\n          <span style=\"padding:18px;border-bottom:1px solid #DCE3E7;display:flex;gap:12px;align-items:flex-start;color:#45606F;font-size:15px;line-height:1.45\"><span aria-hidden=\"true\" style=\"flex:none;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:1.5px solid #9FB0BA;color:#9FB0BA;font-weight:800;font-size:12px\">\u2715<\/span>No starting numbers to compare to<\/span>\n        \n          <span style=\"padding:18px;background:#093346;border-top:1px solid rgba(228,233,236,.14);display:flex;gap:12px;align-items:flex-start;color:#fff;font-size:15px;line-height:1.45;font-weight:600\"><span aria-hidden=\"true\" style=\"flex:none;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#E82400;color:#fff;font-weight:800;font-size:12px\">\u2713<\/span>One account lead<\/span>\n          <span style=\"padding:18px;border-bottom:1px solid #DCE3E7;display:flex;gap:12px;align-items:flex-start;color:#45606F;font-size:15px;line-height:1.45\"><span aria-hidden=\"true\" style=\"flex:none;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:1.5px solid #9FB0BA;color:#9FB0BA;font-weight:800;font-size:12px\">\u2715<\/span>Rotating contacts<\/span>\n        \n          <span style=\"padding:18px;background:#093346;border-top:1px solid rgba(228,233,236,.14);display:flex;gap:12px;align-items:flex-start;color:#fff;font-size:15px;line-height:1.45;font-weight:600\"><span aria-hidden=\"true\" style=\"flex:none;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#E82400;color:#fff;font-weight:800;font-size:12px\">\u2713<\/span>Results reported every month<\/span>\n          <span style=\"padding:18px;border-bottom:1px solid #DCE3E7;display:flex;gap:12px;align-items:flex-start;color:#45606F;font-size:15px;line-height:1.45\"><span aria-hidden=\"true\" style=\"flex:none;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:1.5px solid #9FB0BA;color:#9FB0BA;font-weight:800;font-size:12px\">\u2715<\/span>Activity reports<\/span>\n        \n      <\/div>\n    <\/div><\/section>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7863b25 elementor-widget elementor-widget-aio-service-faq\" data-id=\"7863b25\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"aio-service-faq.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<section aria-labelledby=\"sv-faq\" style=\"background:#fff;padding:clamp(56px,8vw,120px) clamp(20px,4.5vw,64px)\"><div style=\"max-width:1312px;margin:0 auto;display:flex;flex-wrap:wrap;gap:32px clamp(40px,6vw,96px)\">\n      <div style=\"flex:1 1 300px;display:flex;flex-direction:column;gap:16px;align-items:flex-start\"><div style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:13px;letter-spacing:.2em;color:#45606F\">FAQ<\/div><h2 id=\"sv-faq\" style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:clamp(30px,3.6vw,52px);line-height:1;letter-spacing:-.03em;color:#093346\">Headless CMS questions, answered without the jargon<\/h2><a href=\"\/abbotsford\/faq\/\" style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:15px;color:#093346;border-bottom:1px solid #093346;padding:8px 0 4px;text-decoration:none\">All FAQs \u2192<\/a><\/div>\n      <div style=\"flex:2 1 560px;border-top:1px solid #093346\"><div style=\"border-bottom:1px solid #C5D0D6\"><h3 style=\"margin:0\"><button data-on-click=\"q.toggle\" aria-expanded=\"false\" style=\"all:unset;cursor:pointer;box-sizing:border-box;width:100%;min-height:64px;padding:18px 0;display:flex;justify-content:space-between;align-items:center;gap:24px;font-family:Montserrat,MontserratFb;font-weight:700;font-size:clamp(17px,1.5vw,20px);line-height:1.35;color:#093346\" data-acc-btn class=\"h9b802e9\"><span>What is a headless CMS in plain language?<\/span><span aria-hidden=\"true\" style=\"flex:none;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid #C5D0D6;font-size:22px;color:#E82400\" data-acc-icon>+<\/span><\/button><\/h3><p style=\"margin:0;padding:0 0 22px;font-size:17px;line-height:1.65;color:#2B4A5A\" hidden=\"\" data-acc-panel>A headless CMS is an editing system that stores your content without any design attached, then delivers it to whatever displays it. Editors write in a form, not on a page. Developers build the website or app separately and fetch the content through an API. The word headless simply means the content system has been separated from the head, the part visitors see.<\/p><\/div><div style=\"border-bottom:1px solid #C5D0D6\"><h3 style=\"margin:0\"><button data-on-click=\"q.toggle\" aria-expanded=\"false\" style=\"all:unset;cursor:pointer;box-sizing:border-box;width:100%;min-height:64px;padding:18px 0;display:flex;justify-content:space-between;align-items:center;gap:24px;font-family:Montserrat,MontserratFb;font-weight:700;font-size:clamp(17px,1.5vw,20px);line-height:1.35;color:#093346\" data-acc-btn class=\"h9b802e9\"><span>Do I need a headless CMS, or is WordPress enough for my site?<\/span><span aria-hidden=\"true\" style=\"flex:none;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid #C5D0D6;font-size:22px;color:#E82400\" data-acc-icon>+<\/span><\/button><\/h3><p style=\"margin:0;padding:0 0 22px;font-size:17px;line-height:1.65;color:#2B4A5A\" hidden=\"\" data-acc-panel>WordPress is often enough for a business site, and headless pays off only for particular needs. Consider it when the same content must reach a website, an app and other screens, or when you want a very light custom front end. If you mainly publish pages and posts to one site, a well-built WordPress or Webflow site costs less to build and maintain. We recommend whichever matches the job.<\/p><\/div><div style=\"border-bottom:1px solid #C5D0D6\"><h3 style=\"margin:0\"><button data-on-click=\"q.toggle\" aria-expanded=\"false\" style=\"all:unset;cursor:pointer;box-sizing:border-box;width:100%;min-height:64px;padding:18px 0;display:flex;justify-content:space-between;align-items:center;gap:24px;font-family:Montserrat,MontserratFb;font-weight:700;font-size:clamp(17px,1.5vw,20px);line-height:1.35;color:#093346\" data-acc-btn class=\"h9b802e9\"><span>How much does headless CMS development cost?<\/span><span aria-hidden=\"true\" style=\"flex:none;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid #C5D0D6;font-size:22px;color:#E82400\" data-acc-icon>+<\/span><\/button><\/h3><p style=\"margin:0;padding:0 0 22px;font-size:17px;line-height:1.65;color:#2B4A5A\" hidden=\"\" data-acc-panel>Projects start from $1,000 and hourly work is $50 to $99, but headless builds usually sit above the small end because both the content system and the front end are built. The quote depends on how many content types you need, the channels you serve and whether editors need previews and approvals. CMS subscription fees, where a hosted product is used, are paid to its vendor.<\/p><\/div><div style=\"border-bottom:1px solid #C5D0D6\"><h3 style=\"margin:0\"><button data-on-click=\"q.toggle\" aria-expanded=\"false\" style=\"all:unset;cursor:pointer;box-sizing:border-box;width:100%;min-height:64px;padding:18px 0;display:flex;justify-content:space-between;align-items:center;gap:24px;font-family:Montserrat,MontserratFb;font-weight:700;font-size:clamp(17px,1.5vw,20px);line-height:1.35;color:#093346\" data-acc-btn class=\"h9b802e9\"><span>Will a headless website hurt my search engine visibility?<\/span><span aria-hidden=\"true\" style=\"flex:none;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid #C5D0D6;font-size:22px;color:#E82400\" data-acc-icon>+<\/span><\/button><\/h3><p style=\"margin:0;padding:0 0 22px;font-size:17px;line-height:1.65;color:#2B4A5A\" hidden=\"\" data-acc-panel>No, a headless site does not have to hurt search visibility, provided pages are rendered on the server or at build time rather than assembled in the visitor's browser. We generate full HTML for each page, take titles, headings, structured data and sitemaps from CMS fields, and test how pages appear to crawlers before launch. Editors keep control of the SEO fields.<\/p><\/div><\/div>\n    <\/div><\/section>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4cba2bb elementor-widget elementor-widget-aio-service-siblings\" data-id=\"4cba2bb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"aio-service-siblings.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<section aria-label=\"Related services\" style=\"background:#F4F7F8;padding:clamp(48px,6vw,88px) clamp(20px,4.5vw,64px)\"><div style=\"max-width:1312px;margin:0 auto;display:flex;flex-direction:column;gap:24px\"><div style=\"display:flex;justify-content:space-between;gap:16px;align-items:baseline\"><div style=\"font-family:Montserrat,MontserratFb;font-weight:600;font-size:13px;letter-spacing:.2em;color:#45606F\">RELATED SERVICES<\/div><a href=\"\/abbotsford\/services\/\" style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:14px;color:#093346;text-decoration:none;border-bottom:1px solid #093346\">All services \u2192<\/a><\/div><div style=\"display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px\"><a href=\"\/abbotsford\/services\/wordpress-development\/\" style=\"display:flex;flex-direction:column;gap:8px;padding:24px;background:#fff;border:1px solid #DCE3E7;text-decoration:none;transition:border-color .2s, transform .2s\" class=\"hb5862d1\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:17px;color:#093346\">WordPress Development<\/span><span style=\"font-size:14px;line-height:1.5;color:#45606F\">Custom themes, plugins and editor training<\/span><\/a><a href=\"\/abbotsford\/services\/shopify-development\/\" style=\"display:flex;flex-direction:column;gap:8px;padding:24px;background:#fff;border:1px solid #DCE3E7;text-decoration:none;transition:border-color .2s, transform .2s\" class=\"hb5862d1\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:17px;color:#093346\">Shopify Development<\/span><span style=\"font-size:14px;line-height:1.5;color:#45606F\">Themes, apps, store setup and migration<\/span><\/a><a href=\"\/abbotsford\/services\/webflow-development\/\" style=\"display:flex;flex-direction:column;gap:8px;padding:24px;background:#fff;border:1px solid #DCE3E7;text-decoration:none;transition:border-color .2s, transform .2s\" class=\"hb5862d1\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:17px;color:#093346\">Webflow Development<\/span><span style=\"font-size:14px;line-height:1.5;color:#45606F\">CMS collections, interactions and editor setup<\/span><\/a><a href=\"\/abbotsford\/services\/cms-migration-services\/\" style=\"display:flex;flex-direction:column;gap:8px;padding:24px;background:#fff;border:1px solid #DCE3E7;text-decoration:none;transition:border-color .2s, transform .2s\" class=\"hb5862d1\"><span style=\"font-family:Montserrat,MontserratFb;font-weight:700;font-size:17px;color:#093346\">CMS Migration<\/span><span style=\"font-size:14px;line-height:1.5;color:#45606F\">Platform moves with redirects and rehearsals<\/span><\/a><\/div><\/div><\/section>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9d58a90 elementor-widget elementor-widget-aio-cta-band\" data-id=\"9d58a90\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"aio-cta-band.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<section aria-labelledby=\"sv-cta\" style=\"background:#093346;color:#fff;padding:clamp(64px,9vw,120px) clamp(20px,4.5vw,64px)\"><div style=\"max-width:1312px;margin:0 auto;display:flex;flex-wrap:wrap;gap:32px 64px;align-items:flex-end;justify-content:space-between\"><h2 id=\"sv-cta\" style=\"margin:0;font-family:Montserrat,MontserratFb;font-weight:800;font-size:clamp(34px,5vw,72px);line-height:.95;letter-spacing:-.035em;color:#fff\">Ready to start? <br>Say hello.<\/h2><div style=\"display:flex;flex-wrap:wrap;gap:12px\"><a href=\"\/abbotsford\/start-a-project\/\" style=\"display:flex;align-items:center;min-height:56px;padding:0 28px;background:#E82400;color:#fff;font-family:Montserrat,MontserratFb;font-weight:700;font-size:15px;letter-spacing:.06em;text-decoration:none;white-space:nowrap\" class=\"hf3251d8\">CONTACT OUR TEAM<\/a><a href=\"tel:+16048003883\" style=\"display:flex;align-items:center;min-height:56px;padding:0 28px;border:1px solid #9FB3BE;color:#fff;font-family:Montserrat,MontserratFb;font-weight:700;font-size:15px;letter-spacing:.06em;text-decoration:none;white-space:nowrap\" class=\"he524528\">CALL +1 (604) 800-3883<\/a><\/div><\/div><\/section>\t\t\t\t<\/div>\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>Headless CMS development for Abbotsford and Fraser Valley businesses: structured content, an API, a light front end and editor tools your team can learn.<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":17336,"menu_order":230,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-18165","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/allinonemarketingpro.com\/abbotsford\/wp-json\/wp\/v2\/pages\/18165","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/allinonemarketingpro.com\/abbotsford\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/allinonemarketingpro.com\/abbotsford\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/allinonemarketingpro.com\/abbotsford\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/allinonemarketingpro.com\/abbotsford\/wp-json\/wp\/v2\/comments?post=18165"}],"version-history":[{"count":1,"href":"https:\/\/allinonemarketingpro.com\/abbotsford\/wp-json\/wp\/v2\/pages\/18165\/revisions"}],"predecessor-version":[{"id":18194,"href":"https:\/\/allinonemarketingpro.com\/abbotsford\/wp-json\/wp\/v2\/pages\/18165\/revisions\/18194"}],"up":[{"embeddable":true,"href":"https:\/\/allinonemarketingpro.com\/abbotsford\/wp-json\/wp\/v2\/pages\/17336"}],"wp:attachment":[{"href":"https:\/\/allinonemarketingpro.com\/abbotsford\/wp-json\/wp\/v2\/media?parent=18165"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}