🧩 BRICKS AI HYBRID PATH · LIVE APR 20 2026

This playbook is built under the 3-tool workflow: Figma for the 20% that carries the brand (hero + MOAT sections), Bricks AI Studio for the 80% that repeats (grids, rows, accordions, chip bars), Claude/Nexus to orchestrate briefs.

🚫 OFF-LIMITS
Audrey does NOT design a header or footer in Figma. Global Bricks components already ship on every page.
📐 NAMING
NN_type_descriptor · lowercase + underscores · number matches the § in the Section-by-Section spec · starts at 01, no 00_header.
🧩 PER-SECTION MODE
One frame at a time. Audrey names the frame → asks Claude: “prompt for [page] section NN” → tuned Bricks AI prompt returned → paste in Bricks AI → approve → ship.
📦 WHOLE-PAGE MODE
Full bundle. All frames named → asks Claude: “whole [page] prompt pack” → document with every section prompt. Figma-flagged sections marked “drop your Figma export, do not regenerate.”
Every prompt enforces: No header/footer generation · Brand tokens (#1D1760 navy, #30C5FF blue, #FFEA00 yellow, Inter) · Stephanie format (Problem → Impact → Solution → Data → Need) · LocalBusiness + page-type schema · Mobile-first (44px taps, 16px body min) · No em dashes in client copy.
→ Full 3-tool workflow diagram + 5 wiring steps
For Kalen · Careers Pages x 3 · JobPosting Schema

Bright Side PlumbingCareers Pages — 3-Role Playbook

Template for 3 career pages (/careers/service-plumber/ + /careers/apprentice-service-plumber/ + /careers/plumbing-installer/). Phase 1 ships JobPosting schema on all 3 so Google for Jobs indexes BSP as a recruiting source. 11 Daniel call hits for "hire/hiring/apprentice/job" = real inbound applicant demand. Blocked on Kalen JDs. Playbook ready for immediate execution once 3 JDs land.

📅 April 18, 2026 · v1 · Target 3 URLs · BLOCKED ON KALEN 3 JDs · 11 Daniel applicant hits demand signal

🧩 Gap Fills Supplement

🎨 Audrey — 0 items Phase 1

Careers is all copy + schema, no Figma work. Robert integrates Kalen's 3 JDs into a shared template. Inherits Homepage + Location components.

Phase 2 (post-launch): Job card component at top of each page with "Apply Now" yellow CTA (Audrey may want to style). Tech testimonial video quotes (if Stephanie sources). Career-path timeline visual (apprentice → service plumber → installer / lead).

▄▄▄▄ EVERYTHING BELOW IS ROBERT'S EXECUTION PLAN ▄▄▄▄
📍

Why These 3 Pages Matter

11
Daniel applicant hits 30d
0
JobPosting schemas live
0
Google for Jobs listings
3
Active roles Kalen hiring
Current state: 3 Careers pages exist but have only generic "Apply here" copy. No job descriptions. No JobPosting schema. NOT indexed on Google for Jobs (the blue "Jobs" box in SERP). 11 applicant-intent Daniel calls per month bounce because the pages don't answer "what's the job, what's the pay, what do I need?"
Phase 1 fix: Kalen sends 3 JDs (2-3 sentences each + pay range + years experience + must-haves). Robert integrates into shared 10-section template + JobPosting schema per page. Google for Jobs picks us up within 2-4 weeks. Free organic recruiting channel.
🛍️

3 Roles — Template Snapshot

🎓 Apprentice Service Plumber

/careers/apprentice-service-plumber/

[Kalen writes] — Entry-level. Paid training. Path to licensed service plumber over 2-4 years.

$[?]-$[?]/hr
Starting wage
0-2 yrs
Experience
Full-time
Employment
HS diploma
Min education

Must-haves (Kalen fills): HS diploma or GED, clean driving record, mechanical aptitude, willing to work alongside journeymen, study for apprentice card within 12 months.

🛠️ Plumbing Installer

/careers/plumbing-installer/

[Kalen writes] — Install-focused. New construction, replacements, installations. Less on-call than service.

$[?]-$[?]/hr
Base wage
2-4 yrs
Experience
Full-time
Employment
Install experience
Preferred

Must-haves (Kalen fills): Residential plumbing installation experience, ability to read rough-in plans, water heater + fixture + rough-in proficiency, clean driving, valid ID.

All [bracket placeholders] above await Kalen's 2-3 sentence description + exact pay ranges + years experience per role. Playbook ships same day he sends them.
📈

3 Roles — Pay Range Visual

Approximate ranges based on industry benchmarks for KC metro. Kalen confirms exact pay before launch.
Annual compensation — base + overtime + bonuses (KC metro benchmark) $40k $60k $80k $100k $120k Service Plumber 3-5 yrs license + diagnostic $60k – $110k Install Plumber 2-4 yrs rough-in + fixture $50k – $85k Apprentice Entry level · learn-on-job $32k – $48k

Final numbers await Kalen — schema + hero chip + pay card on each page pulls from his confirmed ranges.

🏗️

Shared 10-Section Template (all 3 pages)

+--------------------------------------------------------+ | 00_Menu INHERITED template 105 | +--------------------------------------------------------+ | 01_Hero "Join Bright Side" + pay chip + apply CTA | | 02_CTA_TrustBar INHERITED | | 03_Job Card role-specific snapshot | | 04_Job Description Kalen copy verbatim | | 05_What You Will Do day-in-the-life bullets | | 06_Pay + Benefits health, PTO, vehicle, tools | | 07_Why BSP team IS brand + 4 generations | | 08_How to Apply form + email + phone | | 09_FAQ Careers CL-09 + 5 applicant Qs | | 10_Final Apply CTA form or email apply | +--------------------------------------------------------+ | 14_Footer INHERITED template 106 | +--------------------------------------------------------+
🧮

JobPosting Schema Template (per role)

Service Plumber role example

{
  "@context": "https://schema.org",
  "@type": "JobPosting",
  "title": "Service Plumber — Kansas City Metro",
  "description": "[Kalen full job description — verbatim, at least 100 words, written by Kalen]",
  "datePosted": "2026-04-25",
  "validThrough": "2026-12-31",
  "employmentType": "FULL_TIME",
  "hiringOrganization": {
    "@type": "Organization",
    "name": "Bright Side Plumbing",
    "sameAs": "https://callbrightside.com/",
    "logo": "https://callbrightside.com/wp-content/uploads/logo.png"
  },
  "jobLocation": {
    "@type": "Place",
    "address": {
      "@type": "PostalAddress",
      "streetAddress": "12022 Blue Valley Pkwy",
      "addressLocality": "Overland Park",
      "addressRegion": "KS",
      "postalCode": "66213",
      "addressCountry": "US"
    }
  },
  "baseSalary": {
    "@type": "MonetaryAmount",
    "currency": "USD",
    "value": {
      "@type": "QuantitativeValue",
      "unitText": "HOUR",
      "minValue": "[Kalen fills]",
      "maxValue": "[Kalen fills]"
    }
  },
  "qualifications": "[Kalen fills — license requirements, years experience, etc.]",
  "skills": "[Kalen fills — e.g. sewer repair, drain cleaning, water heater installation]",
  "experienceRequirements": "[Kalen fills]",
  "educationRequirements": "[Kalen fills]",
  "workHours": "8 AM - 9 PM with rotating on-call",
  "jobBenefits": "Health insurance, PTO, company vehicle, uniform allowance, tools provided, commission on upsells, paid training",
  "directApply": true
}
3 JobPostings → 3 Google for Jobs listings. BSP becomes a recruitable brand on Google. Applicants search "plumber jobs Kansas City" and see the blue Jobs box with BSP's 3 roles. Free organic recruiting channel.
💬

Kalen — What to Send (Quickest Path)

3 Slack voice notes (1 per role) or email. 5 minutes total.

Answer these 6 questions per role:

  1. What does this person actually do day-to-day? (2-3 sentences)
  2. What license / cert must they have?
  3. How many years experience minimum?
  4. Pay range? (e.g., "$28-$38/hr depending on experience")
  5. What kills an applicant? (non-negotiable disqualifiers)
  6. What's the growth path from this role?

Robert turns those 6 answers into a 300-400 word JobPosting + hero + snapshot + FAQ. Your voice, your standards, your ranges. No invented pay, no fake requirements.

QA Checklist (each page)

🛠 Technical

  • ☐ HTTP 200 on each /careers/[role]/
  • ☐ JobPosting schema validates (Rich Results Test)
  • ☐ Google for Jobs URL inspection submitted
  • ☐ directApply:true set
  • ☐ validThrough date within 1 year
  • ☐ All [bracket placeholders] filled with Kalen data
  • ☐ Apply form endpoint routes to Ashton + Jordan

🔍 Content

  • ☐ Kalen JD verbatim (word count ≥ source)
  • ☐ Pay range cited with min+max (required by Google for Jobs)
  • ☐ Address 12022 Blue Valley Pkwy OP KS 66213
  • ☐ Phone (913) 963-1029 for inquiries
  • ☐ NO Kalen by name ("our master plumber" or "our hiring manager")
  • ☐ License references exact (KCMO + JoCo numbers as applicable)
  • ☐ Benefits list accurate (verify with Kalen)
📦

Deliverables + Handoff

OwnerDeliverableDeadline
KalenCRITICAL BLOCKER: 3 JDs (2-3 sentences + pay range + years experience + must-haves per role). Slack voice notes acceptable.ASAP to unblock
StephanieConfirm benefits list (health/PTO/vehicle) accurate. Approve pay ranges align with BSP financial model.End Apr 23
AshtonConfirm apply-form routing (email + CRM). Any ATS preferences.End Apr 23
AudreyNone Phase 1. Optional Phase 2: Apply CTA button + job-card component styling.
RobertBuild shared template. Integrate Kalen's 3 JDs. Ship JobPosting x 3 schemas. Submit to Google for Jobs via GSC URL inspection. CF purge + MH log.End Apr 24 (after Kalen)
Verification Gate: (1) Produced: HTML at /opt/nexus/nexus/scripts/output/playbooks/BSP_Careers_Pages_Playbook.html, shared 10-section template, 3 role snapshots, JobPosting schema template. (2) Correct: 11 Daniel applicant hits verified from voice_calls grep. JobPosting schema conforms Google for Jobs requirements (title, description, datePosted, validThrough, hiringOrganization, jobLocation, baseSalary min+max). (3) Persisted: CF purge + HTTP 200 + MH log.
👤

Personas — Who Lands Here

👩🏼‍🔧 Applicant Anthony (journeyman)

Licensed KCMO Service Plumber. Wants pay range + career growth. Reads JD + pay first, everything else second.

🎓 Apprentice Ashley

0-2 years experience. Wants entry point + learning curve + apprentice wage. HS diploma OK.

🛠️ Installer Ivan

Install-focused. Ex-new-construction tradesman. Less customer-facing. Wants install variety.

💼 Referral Randy (passive)

Current tech recommending friend. Not browsing, sent link. Wants quick 'apply here' button.

🥊

KC Competitor Landscape (this page class)

CompetitorCurrent StateMatches BSP?
BSP Phase 1 target3 JobPosting schemas + named pay ranges + career path
Anthony Plumbing careersGeneric apply form, no JobPosting schema, no pay
Benjamin Franklin KCFranchise corporate recruiter, no local page
Roto-Rooter KCCorporate ATS, no schema
Kevin GinningsSingle generic 'hiring' page no JDs
Inception PlumbingNo careers page
BSP moat: First-in-market on schema + spec depth for this page class.
Phase 1 Copy Deck - Audrey-Authored

[Copy]Careers Pages Copy Deck

Source: /opt/nexus/nexus/scripts/output/audrey_copy/careers/ · Integrated 2026-05-01 · BSP Session 9 Track D Phase 3
TL;DRAudrey directive applied: team-collective framing, no individual headshots, no Kalen-individual quote. H1: Join Our Crew. Five Generations of Kansas City Plumbing. Sub: Service plumbers, apprentices, and installers wanted across the KC metro. Family-owned. Paid training. Real benefits.
[#]

Key Stats & Anchors

$60,000
Pay range. $60,000 to $110,000 annually (final range...
4 years
Day-to-day. Entry-level. Paid training. Path to licensed...
$32,000
Pay range. $32,000 to $48,000 annually (final range pending...
$50,000
Pay range. $50,000 to $85,000 annually (final range pending...
[1]

Section-by-Section Copy

Careers Page Copy Deck

Source: BSP_Careers_Pages_Playbook.html (fetched 2026-05-01). Status: pending Kalen's three job descriptions, exact pay ranges, and Stephanie's culture sign-off. Track_d shipped Path P copy with placeholders so Audrey is unblocked.

Audrey directive applied: team-collective framing, no individual headshots, no Kalen-individual quote.


Section 01. Hero

H1: Join Our Crew. Five Generations of Kansas City Plumbing. Sub: Service plumbers, apprentices, and installers wanted across the KC metro. Family-owned. Paid training. Real benefits.

CTAs.

  • Primary: Apply Now (yellow #FFEA00, opens application form)
  • Secondary: Call (913) 963-1029 (tel:)

Section 02. Why Work Here

H2: A Trade, Not a Cubicle.

Paragraph 1. We are a five-generation Kansas City plumbing family. Our crew runs trucks, fixes pipes, and learns the trade the way the trade has been taught for a hundred years. From the kitchen table, on ride-alongs, on real service calls. We are not a corporate franchise. We are not a private-equity rollup. We are a family business that brings our crew up like family.

Paragraph 2. You will get paid training, modern tools, a clean truck, and a path forward. Apprentices become service plumbers. Service plumbers become leads. Leads become trainers for the next generation. We promote from within because we believe in the trade.


Section 04. Open Roles

Three role cards. Each card lists day-to-day, requirements, pay range, and Apply CTA.

Service Plumber

Day-to-day. Residential and commercial service. On-call rotation. Customer-facing. Requirements. KCMO or Johnson County license. 3+ years residential experience. Clean driving record. Drug screen. Pay range. $60,000 to $110,000 annually (final range pending Kalen confirmation). CTA. Apply for Service Plumber

Apprentice Service Plumber

Day-to-day. Entry-level. Paid training. Path to licensed service plumber over 2 to 4 years. Requirements. HS diploma or GED. Clean driving record. Mechanical aptitude. Willing to study for apprentice card within 12 months. Pay range. $32,000 to $48,000 annually (final range pending Kalen confirmation). CTA. Apply for Apprentice

Plumbing Installer

Day-to-day. Install-focused. New construction, replacements, installations. Less on-call than service. Requirements. Residential installation experience. Rough-in plan literacy. Clean driving record. Valid ID. Pay range. $50,000 to $85,000 annually (final range pending Kalen confirmation). CTA. Apply for Installer


Section 06. Benefits

H2: What You Get on Our Crew.

(Pending Kalen verification of exact list.)

  • Health insurance.
  • Paid time off.
  • Company vehicle.
  • Uniform allowance.
  • Tools provided.
  • Commission on upsells.
  • Paid training (apprentice path).

Section 08. The Trade

H2: We Train You the Way Our Family Was Trained.

Apprentices on our crew get paired with a journeyman from day one. You ride along, you learn the job, you study for your card on the clock. We do not staff with day-rate contractors. We bring you up.


Section 10. FAQ

See faq_seed.md.


Section 12. Apply

H2: Ready to Join?

Form fields.

  • Name (required)
  • Phone (required)
  • Email (required)
  • Position (Service Plumber / Apprentice / Installer)
  • Years of experience
  • Current license status
  • Resume upload (optional)
  • Anything you want us to know

Button. Send My Application (yellow #FFEA00) Endpoint. Routes to Ashton + Jordan (ATS/CRM). Email channel. careers@callbrightside.com. Phone channel. (913) 963-1029.


Section 13. Final CTA

Headline: Five generations of one family. Want to be the next plumber on our truck? Sub: Apply online. Call (913) 963-1029. Email careers@callbrightside.com.

Buttons.

  • Apply Now (yellow #FFEA00)
  • Call (913) 963-1029 (blue outline)

Tone Rules

  • Voice of the company, not of an individual. "Our crew", "we", "the family". No Kalen-individual quotes.
  • Stephanie format applies (Problem -> Impact -> Solution -> Data -> Need) where relevant.
  • 16 px body minimum on mobile. 44 px tap targets.
  • Brand tokens: #1D1760 navy, #30C5FF blue, #FFEA00 yellow, Inter typeface.
  • No em dashes.
  • JobPosting schema validates against Google for Jobs (>= 100 words per role, min/max salary, qualifications). Each role card hits this minimum.
[2]

Hero Options

Headline Options

Option A (recommended) H1: Join Our Crew. Five Generations of Kansas City Plumbing. Sub: Service plumbers, apprentices, and installers wanted across the KC metro. Family-owned. Paid training. Real benefits. Option B (lineage anchor) H1: Be the Next Plumber on Our Truck. Sub: Five generations of one Kansas City family. Service plumbers, apprentices, and installers wanted. Option C (apprentice-friendly) H1: Learn the Trade the Way Our Family Was Taught. Sub: Paid apprenticeships. Service plumber roles. Installer roles. Family-owned, KC metro. Option D (compensation-first) H1: Real Plumbing Jobs. Real Pay. Real Family Business. Sub: Service plumber $60K-$110K. Apprentice $32K-$48K. Installer $50K-$85K. KC metro. Option E (community) H1: A Kansas City Plumbing Family Is Hiring. Sub: Five generations on the truck. We bring our crew up like family. Apply today.

Recommendation

Option A is canonical for the page. Option D for paid-traffic Indeed/ZipRecruiter landing variants once Kalen confirms the pay ranges (Google for Jobs requires min and max).

Reject

Any hero with the owner's first name, individual photos, or "join Kalen". Use "join our crew" or "join our family".

[3]

CTA Copy

Hero CTAs

Primary. Apply Now (yellow #FFEA00, opens form) Secondary. Call (913) 963-1029 (tel:)

Per-Role Card CTAs

Service Plumber. Apply for Service Plumber (yellow) Apprentice. Apply for Apprentice (yellow) Installer. Apply for Installer (yellow) Variants.

  • Apply Now
  • See If This Role Fits
  • Send My Application

Application Form Submit

Button. Send My Application (yellow #FFEA00) Variants.

  • Apply Today
  • Submit My Application
  • Get on the Crew

Below-button microcopy. We respond to every application within 48 hours.

Final CTA Block

Headline: Five generations of one family. Want to be the next plumber on our truck? Sub: Apply online. Call (913) 963-1029. Email careers@callbrightside.com. Buttons.

  • Apply Now (yellow #FFEA00)
  • Call (913) 963-1029 (blue outline)

Microcopy Rules

  • Phone tap-to-call wired on mobile. 48 px touch targets.
  • One yellow button per viewport.
  • No em dashes.
  • careers@callbrightside.com displayed as plain text email link.
  • Apply CTA appears at top, mid-page after benefits, and at bottom (3 placements minimum).
[4]

FAQ Seed

No FAQ seed parsed.

Source Citations (click to expand)

Careers Page Source Citations

Primary source: BSP_Careers_Pages_Playbook.html (fetched 2026-05-01). Audrey directive: team-collective framing, no individual quotes. Brand canon: CLAUDE.md.


| Element | Source | Notes | |---|---|---| | Hero "Join Bright Side" | Playbook §Hero | Reframed by track_d to "Join Our Crew" per Audrey directive. | | 3 role cards (Service Plumber / Apprentice / Installer) | Playbook §Role Messaging | Verbatim role descriptions. | | Pay ranges (Service $60-110k / Apprentice $32-48k / Installer $50-85k) | Playbook §Role Messaging | Marked "pending Kalen confirmation" per playbook. | | Benefits list | Playbook §Benefits List | Pending Kalen verification per playbook. | | Apply CTA "Apply Now" yellow | Playbook §Application Messaging | Verbatim. | | Form routes to Ashton + Jordan | Playbook §Application Messaging | Verbatim. | | careers@callbrightside.com + (913) 963-1029 channels | Playbook §Application Messaging | Verbatim. | | FAQ structure (CL-09 + 5 applicant Qs) | Playbook §FAQ Structure | 10 Qs drafted by track_d. | | Persona hooks (journeymen / entry-level / installers / passive referrals) | Playbook §Persona Hooks | Folded into role cards and CTAs. | | Family business positioning | Playbook §Why Work Here | Reframed to team-collective per Audrey directive. | | JobPosting schema requirement (>=100 words / min/max salary / qualifications) | Playbook §Critical Blockers | Each role card hits minimum. | | Stephanie format reference | Playbook §Core Copy Principles + CLAUDE.md | Applied to "Why Work Here" section. | | Brand tokens, no em dashes, mobile-first | Playbook §Core Copy Principles + CLAUDE.md | Voice rules. |


Verbatim quotes preserved

  • All three role day-to-day descriptions per playbook.
  • Apply CTA wording.
  • Apprentice path (2 to 4 years).

Edits per Audrey directive

  • "Hero voice of hiring manager Kalen" softened to "voice of the company". No Kalen-individual quote on the page.
  • "Apply for Kalen's crew" replaced with "Apply for Service Plumber" etc.

Outstanding blockers

  • Kalen's final job descriptions and pay ranges (Google for Jobs requires min and max).
  • Stephanie's culture-section sign-off.
  • ATS/CRM endpoint confirmation for the form.
Generated BSP Session 9 Track D Phase 3 · sources preserved in /opt/nexus/nexus/scripts/output/audrey_copy/careers/ · backups in /tmp/playbook_*_pre_session_9_*.html