[
  {
    "id": "fund-101",
    "title": "Tiling Fundamentals: Tools, Safety, and Surface Prep",
    "category": "Fundamentals",
    "level": "Beginner",
    "durationHours": 8,
    "price": 79,
    "tags": ["tools", "safety", "prep", "layout"],
    "image": "./images/course-fundamentals.jpg",
    "description": "Start with essential gear, personal safety, and how to assess and prepare subfloors and walls for lasting results.",
    "outcomes": ["Select safe, suitable tools", "Assess substrates", "Achieve flatness tolerance", "Plan a basic layout"]
  },
  {
    "id": "bath-201",
    "title": "Waterproofing Showers and Wet Areas",
    "category": "Bathroom",
    "level": "Intermediate",
    "durationHours": 10,
    "price": 119,
    "tags": ["waterproofing", "membranes", "seams", "slope"],
    "image": "./images/course-waterproofing.jpg",
    "description": "Master membrane selection, corner treatment, seam sealing, and proper slopes to protect structures from moisture.",
    "outcomes": ["Choose suitable membranes", "Install corners and seams", "Create correct slopes", "Perform flood tests"]
  },
  {
    "id": "kit-210",
    "title": "Kitchen Backsplashes: Clean Cuts and Outlets",
    "category": "Kitchen",
    "level": "Beginner",
    "durationHours": 6,
    "price": 69,
    "tags": ["backsplash", "cuts", "outlets", "mosaic"],
    "image": "./images/course-backsplash.jpg",
    "description": "Lay tidy backsplashes, handle outlet cuts safely, and align mosaics for polished kitchen finishes.",
    "outcomes": ["Set a level reference line", "Cut around outlets", "Align mosaics", "Grout without haze"]
  },
  {
    "id": "out-305",
    "title": "Outdoor Patios: Substrates and Expansion Joints",
    "category": "Outdoor",
    "level": "Advanced",
    "durationHours": 12,
    "price": 149,
    "tags": ["outdoor", "substrate", "expansion", "freeze-thaw"],
    "image": "./images/course-outdoor.jpg",
    "description": "Account for weather, load, and movement. Build durable exterior installations with correct joints and drainage.",
    "outcomes": ["Evaluate exterior substrates", "Place movement joints", "Choose frost-resistant tiles", "Plan drainage"]
  },
  {
    "id": "lay-220",
    "title": "Layouts That Stay True: Grids, Offsets, and Diagonals",
    "category": "Fundamentals",
    "level": "Intermediate",
    "durationHours": 7,
    "price": 89,
    "tags": ["layout", "grid", "offset", "diagonal"],
    "image": "./images/course-layouts.jpg",
    "description": "Practice chalk lines, grid math, and pleasing offsets. Keep patterns consistent across irregular rooms.",
    "outcomes": ["Snap accurate grid lines", "Calculate offsets", "Carry patterns through rooms", "Avoid slivers"]
  },
  {
    "id": "adh-130",
    "title": "Adhesives and Trowels: Coverage You Can Trust",
    "category": "Fundamentals",
    "level": "Beginner",
    "durationHours": 5,
    "price": 59,
    "tags": ["adhesive", "thinset", "trowel", "coverage"],
    "image": "./images/course-adhesive.jpg",
    "description": "Understand thinset choices, reading datasheets, and trowel selection to achieve proper coverage.",
    "outcomes": ["Read adhesive specs", "Select trowel sizes", "Back-butter effectively", "Verify coverage"]
  },
  {
    "id": "grt-180",
    "title": "Grouting Without Haze",
    "category": "Fundamentals",
    "level": "Beginner",
    "durationHours": 4,
    "price": 49,
    "tags": ["grout", "cleanup", "sealer"],
    "image": "./images/course-grout.jpg",
    "description": "Mix, apply, and clean grout for consistent joints. Learn to prevent haze and when to seal.",
    "outcomes": ["Mix grout to right consistency", "Apply evenly", "Clean without over-wetting", "Plan sealing"]
  },
  {
    "id": "msc-260",
    "title": "Mosaic Mastery: Tiny Tiles, Big Impact",
    "category": "Kitchen",
    "level": "Intermediate",
    "durationHours": 8,
    "price": 109,
    "tags": ["mosaic", "alignment", "mesh", "cutting"],
    "image": "./images/course-mosaic.jpg",
    "description": "Handle mesh-backed and loose mosaics with care, avoiding wavy lines and gaps.",
    "outcomes": ["Stabilize sheets", "Prevent sheet drift", "Cut mosaics cleanly", "Grout tight joints"]
  },
  {
    "id": "str-340",
    "title": "Stairs and Edges: Trims and Profiles",
    "category": "Advanced",
    "level": "Advanced",
    "durationHours": 9,
    "price": 129,
    "tags": ["profiles", "trim", "stairs", "edges"],
    "image": "./images/course-trims.jpg",
    "description": "Choose and set metal profiles for stairs, steps, and exposed edges that feel safe and look refined.",
    "outcomes": ["Select suitable trims", "Cut profiles cleanly", "Align corners", "Finish edges safely"]
  },
  {
    "id": "sub-170",
    "title": "Subfloors: Flatness and Deflection",
    "category": "Fundamentals",
    "level": "Intermediate",
    "durationHours": 6,
    "price": 79,
    "tags": ["subfloor", "deflection", "leveling"],
    "image": "./images/course-subfloor.jpg",
    "description": "Measure flatness and deflection. Use underlayments and self-levelers to meet tile tolerances.",
    "outcomes": ["Check deflection", "Prime and pour leveler", "Install underlayment", "Verify tolerances"]
  },
  {
    "id": "cut-150",
    "title": "Cutting Tiles Safely and Cleanly",
    "category": "Fundamentals",
    "level": "Beginner",
    "durationHours": 5,
    "price": 59,
    "tags": ["cutting", "wet saw", "score and snap"],
    "image": "./images/course-cutting.jpg",
    "description": "Practice hand tools and wet saw techniques with safety at the forefront.",
    "outcomes": ["Use score-and-snap cutters", "Operate a wet saw safely", "Reduce chipping", "Plan cut sequences"]
  },
  {
    "id": "btb-200",
    "title": "Back-Butter Like a Pro",
    "category": "Fundamentals",
    "level": "Intermediate",
    "durationHours": 3,
    "price": 45,
    "tags": ["back-buttering", "coverage", "bond"],
    "image": "./images/course-backbutter.jpg",
    "description": "When and how to back-butter tiles to ensure reliable bonds and even planes.",
    "outcomes": ["Identify when needed", "Apply consistent film", "Check for squeeze-out", "Maintain plane"]
  },
  {
    "id": "bus-310",
    "title": "Small Tiling Business Basics",
    "category": "Business",
    "level": "Intermediate",
    "durationHours": 7,
    "price": 99,
    "tags": ["estimates", "invoicing", "client care"],
    "image": "./images/course-business.jpg",
    "description": "From estimates to client care—set clear expectations and keep projects kind and organized.",
    "outcomes": ["Write clear estimates", "Schedule fairly", "Handle scope changes", "Close projects gracefully"]
  },
  {
    "id": "adv-390",
    "title": "Large Format Tile: Handling and Lippage Control",
    "category": "Advanced",
    "level": "Advanced",
    "durationHours": 11,
    "price": 139,
    "tags": ["large format", "lippage", "suction cups"],
    "image": "./images/course-largeformat.jpg",
    "description": "Lift, place, and tune large tiles safely. Use leveling systems to reduce lippage.",
    "outcomes": ["Use handling gear", "Plan seams", "Control lippage", "Work in teams"]
  },
  {
    "id": "ren-230",
    "title": "Tile Repair and Replacement",
    "category": "Fundamentals",
    "level": "Intermediate",
    "durationHours": 5,
    "price": 69,
    "tags": ["repair", "demo", "patch"],
    "image": "./images/course-repair.jpg",
    "description": "Safely remove damaged tiles and patch areas without harming surrounding work.",
    "outcomes": ["Isolate damaged tiles", "Remove grout safely", "Set and align replacements", "Blend grout color"]
  },
  {
    "id": "shp-265",
    "title": "Shower Pans: Traditional and Modern Systems",
    "category": "Bathroom",
    "level": "Advanced",
    "durationHours": 10,
    "price": 129,
    "tags": ["shower pan", "liner", "pre-slope", "bonded"],
    "image": "./images/course-showerpan.jpg",
    "description": "Compare mud beds, liners, and bonded systems. Build pans with proper slopes and drains.",
    "outcomes": ["Choose a system", "Form preslopes", "Install drains", "Water test pans"]
  },
  {
    "id": "hea-175",
    "title": "Heated Floors: Planning and Tiling",
    "category": "Fundamentals",
    "level": "Intermediate",
    "durationHours": 7,
    "price": 119,
    "tags": ["heated floors", "mats", "thermostat"],
    "image": "./images/course-heated.jpg",
    "description": "Plan electric heating mats with safe coverage and embed them smoothly for even warmth.",
    "outcomes": ["Lay mats safely", "Test circuits", "Embed evenly", "Protect sensors"]
  },
  {
    "id": "nat-280",
    "title": "Natural Stone Care and Setting",
    "category": "Advanced",
    "level": "Advanced",
    "durationHours": 9,
    "price": 129,
    "tags": ["stone", "sealing", "weight"],
    "image": "./images/course-stone.jpg",
    "description": "Handle stone’s unique needs—weight, sealing, and cutting techniques for clean edges.",
    "outcomes": ["Assess structure", "Select blades", "Pre-seal when needed", "Mitigate staining"]
  },
  {
    "id": "lvl-190",
    "title": "Self-Leveling Underlayments",
    "category": "Fundamentals",
    "level": "Intermediate",
    "durationHours": 6,
    "price": 79,
    "tags": ["leveling", "primer", "pouring"],
    "image": "./images/course-leveler.jpg",
    "description": "Prime, dam, and pour levelers for flat, ready-to-tile surfaces that ease the install.",
    "outcomes": ["Prep and prime", "Calculate volume", "Place and spread", "Cure properly"]
  },
  {
    "id": "acc-120",
    "title": "Accessories: Spacers, Wedges, and Leveling Systems",
    "category": "Fundamentals",
    "level": "Beginner",
    "durationHours": 3,
    "price": 39,
    "tags": ["spacers", "wedges", "clips"],
    "image": "./images/course-accessories.jpg",
    "description": "Choose and use accessories that keep joints consistent and reduce lippage.",
    "outcomes": ["Pick spacer sizes", "Use wedges and clips", "Avoid over-tightening", "Remove systems safely"]
  },
  {
    "id": "seal-160",
    "title": "Sealers and Maintenance",
    "category": "Fundamentals",
    "level": "Beginner",
    "durationHours": 4,
    "price": 49,
    "tags": ["sealer", "maintenance", "care"],
    "image": "./images/course-sealer.jpg",
    "description": "Select sealers, schedule maintenance, and keep surfaces dignified with safe cleaners.",
    "outcomes": ["Choose sealers", "Apply evenly", "Set maintenance plans", "Avoid harsh chemicals"]
  },
  {
    "id": "bus-330",
    "title": "Estimating and Bidding for Tiling Projects",
    "category": "Business",
    "level": "Advanced",
    "durationHours": 8,
    "price": 129,
    "tags": ["estimating", "bids", "pricing"],
    "image": "./images/course-bidding.jpg",
    "description": "Build fair bids, factor complexity, and communicate scope clearly to earn client trust.",
    "outcomes": ["Measure scope", "Account for risks", "Write clear bids", "Negotiate respectfully"]
  }
]