/* LeadPixel — Lucide-style line icons. 24px grid, ~1.8px stroke, round caps, currentColor. */
const ico = (paths, vb = '0 0 24 24') => (props) =>
  React.createElement(
    'svg',
    Object.assign(
      {
        viewBox: vb,
        width: 24,
        height: 24,
        fill: 'none',
        stroke: 'currentColor',
        strokeWidth: 1.8,
        strokeLinecap: 'round',
        strokeLinejoin: 'round',
      },
      props
    ),
    paths.map((d, i) => React.createElement('path', { key: i, d }))
  );

// Google Ads — search / cursor click
const IconAds = ico([
  'M11 4a7 7 0 1 0 4.95 11.95A7 7 0 0 0 11 4z',
  'M16 16l4.5 4.5',
]);
// Website — browser window
const IconWebsite = ico([
  'M3 5.5h18v13H3z',
  'M3 9h18',
  'M6 7.2h.01M8.4 7.2h.01M10.8 7.2h.01',
]);
// Social Media Ads — megaphone
const IconSocial = ico([
  'M3 11v2a1 1 0 0 0 1 1h2l8 4V6L6 10H4a1 1 0 0 0-1 1z',
  'M18 8a5 5 0 0 1 0 8',
  'M8 14v4.5a1.5 1.5 0 0 0 3 0V16',
]);
// SEO — trending up in a search ring
const IconSeo = ico([
  'M3 17l5-5 3 3 7-7',
  'M14 8h4v4',
]);
// Landingspagina's — target / focused page
const IconLanding = ico([
  'M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0-18 0',
  'M12 12m-5 0a5 5 0 1 0 10 0a5 5 0 1 0-10 0',
  'M12 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0-2 0',
]);
// Automatiseringen — workflow / zap nodes
const IconAuto = ico([
  'M5 7a2 2 0 1 0 0-4 2 2 0 0 0 0 4z',
  'M19 21a2 2 0 1 0 0-4 2 2 0 0 0 0 4z',
  'M5 7v4a3 3 0 0 0 3 3h6a3 3 0 0 1 3 3v2',
]);

// Process / misc
const IconChat = ico(['M21 11.5a8.38 8.38 0 0 1-8.5 8.5 8.5 8.5 0 0 1-3.8-.9L3 21l1.9-5.7A8.5 8.5 0 1 1 21 11.5z']);
const IconCoffee = ico(['M3 8h13v5a5 5 0 0 1-5 5H8a5 5 0 0 1-5-5V8z', 'M16 9h2.5a2.5 2.5 0 0 1 0 5H16', 'M6 2.5v2M9.5 2.5v2M12.5 2.5v2']);
const IconRocket = ico(['M5 15c-1.5 1.5-2 5-2 5s3.5-.5 5-2', 'M9 11a12 12 0 0 1 8-8c2 0 4 2 4 4a12 12 0 0 1-8 8l-2-1', 'M9 11l4 4', 'M9 11l-3 .5M13 15l-.5 3']);
const IconArrow = ico(['M5 12h14', 'M13 6l6 6-6 6']);
const IconArrowDown = ico(['M12 5v14', 'M6 13l6 6 6-6']);
const IconCheck = ico(['M5 12.5l4.5 4.5L19 7']);
const IconMail = ico(['M3 6.5h18v11H3z', 'M3.5 7l8.5 6 8.5-6']);
const IconDownload = ico(['M12 3v12', 'M7 11l5 4 5-4', 'M4 20h16']);
const IconMenu = ico(['M4 7h16', 'M4 12h16', 'M4 17h16']);
const IconClose = ico(['M6 6l12 12', 'M18 6L6 18']);
const IconPhone = ico(['M22 16.9v2.5a2 2 0 0 1-2.2 2 19 19 0 0 1-8.3-3 18.6 18.6 0 0 1-5.7-5.7A19 19 0 0 1 2.7 4.2 2 2 0 0 1 4.7 2h2.5a2 2 0 0 1 2 1.7c.1 1 .4 2 .7 2.9a2 2 0 0 1-.5 2.1L8.3 9.8a15 15 0 0 0 5.7 5.7l1.1-1.1a2 2 0 0 1 2.1-.5c.9.3 1.9.6 2.9.7a2 2 0 0 1 1.7 2z']);
const IconSpark = ico(['M12 3v4M12 17v4M3 12h4M17 12h4', 'M12 8.5a3.5 3.5 0 0 0 0 7 3.5 3.5 0 0 0 0-7z']);
// AI sparkle — the 4-point star from the LeadPixel logo's "i" dot (filled)
const IconSparkStar = (props) =>
  React.createElement('svg',
    Object.assign({ viewBox: '0 0 24 24', width: 24, height: 24, fill: 'currentColor', stroke: 'none' }, props),
    React.createElement('path', { d: 'M12 2 C12.6 8.4 15.6 11.4 22 12 C15.6 12.6 12.6 15.6 12 22 C11.4 15.6 8.4 12.6 2 12 C8.4 11.4 11.4 8.4 12 2 Z' })
  );
const IconPlus = ico(['M12 5v14', 'M5 12h14']);

// USP — Direct contact (a named person, not an anonymous callcenter)
const IconContact = ico(['M12 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8z', 'M5 20a7 7 0 0 1 14 0']);
// USP — Resultaatgericht (crosshair aimed at a result)
const IconTarget = ico(['M12 19a7 7 0 1 1 0-14 7 7 0 0 1 0 14z', 'M12 12h.01', 'M12 2v3', 'M12 19v3', 'M2 12h3', 'M19 12h3']);
// USP — Snel schakelen (speed)
const IconZap = ico(['M13 2L4.5 13.5H11l-1 8.5L19.5 10H12l1-8z']);
// Lead magnet — open book / guide
const IconBook = ico([
  'M12 6.6C10.4 5.6 7.9 5 6 5c-1.6 0-3 .3-4 .6v13c1-.3 2.4-.6 4-.6 1.9 0 4.4.6 6 1.6',
  'M12 6.6C13.6 5.6 16.1 5 18 5c1.6 0 3 .3 4 .6v13c-1-.3-2.4-.6-4-.6-1.9 0-4.4.6-6 1.6',
  'M12 6.6V20',
]);
// Services carousel — diagonal arrow + chevrons
const IconArrowUpRight = ico(['M7 17L17 7', 'M8 7h9v9']);
const IconChevronLeft = ico(['M15 6l-6 6 6 6']);
const IconChevronRight = ico(['M9 6l6 6-6 6']);

Object.assign(window, {
  IconAds, IconWebsite, IconSocial, IconSeo, IconLanding, IconAuto,
  IconChat, IconCoffee, IconRocket, IconArrow, IconArrowDown, IconCheck,
  IconMail, IconDownload, IconMenu, IconClose, IconPhone, IconSpark, IconSparkStar, IconPlus,
  IconContact, IconTarget, IconZap, IconBook,
  IconArrowUpRight, IconChevronLeft, IconChevronRight,
});
