// Inline SVG icons (Tabler-inspired outline). Stroke uses currentColor.
const Ic = ({ d, size = 24, stroke = 1.6, children }) => (
  <svg width={size} height={size} viewBox="0 0 24 24" fill="none" stroke="currentColor"
    strokeWidth={stroke} strokeLinecap="round" strokeLinejoin="round" aria-hidden="true">
    {children || <path d={d} />}
  </svg>
);

const IconGlobe = (p) => (
  <Ic {...p}>
    <circle cx="12" cy="12" r="9" />
    <path d="M3 12h18" />
    <path d="M12 3a14 14 0 0 1 0 18a14 14 0 0 1 0-18" />
  </Ic>
);
const IconMobile = (p) => (
  <Ic {...p}>
    <rect x="7" y="3" width="10" height="18" rx="2" />
    <path d="M11 18h2" />
  </Ic>
);
const IconSocial = (p) => (
  <Ic {...p}>
    <circle cx="6" cy="12" r="2.2" />
    <circle cx="18" cy="6" r="2.2" />
    <circle cx="18" cy="18" r="2.2" />
    <path d="M8 11l8-4" />
    <path d="M8 13l8 4" />
  </Ic>
);
const IconPaint = (p) => (
  <Ic {...p}>
    <path d="M5 21h14" />
    <path d="M5 17l5-12l4 2l-5 12z" />
    <path d="M14 7l3 1" />
  </Ic>
);
const IconRobot = (p) => (
  <Ic {...p}>
    <rect x="4" y="7" width="16" height="12" rx="2" />
    <path d="M12 4v3" />
    <circle cx="9" cy="13" r="1" />
    <circle cx="15" cy="13" r="1" />
    <path d="M9 17h6" />
  </Ic>
);
const IconServer = (p) => (
  <Ic {...p}>
    <rect x="3" y="4" width="18" height="7" rx="1.5" />
    <rect x="3" y="13" width="18" height="7" rx="1.5" />
    <path d="M7 7.5h.01" />
    <path d="M7 16.5h.01" />
  </Ic>
);

const IconBolt = (p) => <Ic {...p} d="M13 3l-8 11h7l-1 7l8-11h-7z" />;
const IconChip = (p) => (
  <Ic {...p}>
    <rect x="6" y="6" width="12" height="12" rx="1.5" />
    <path d="M9 9h6v6h-6z" />
    <path d="M3 10h3M3 14h3M18 10h3M18 14h3M10 3v3M14 3v3M10 18v3M14 18v3" />
  </Ic>
);
const IconShield = (p) => (
  <Ic {...p}>
    <path d="M12 3l8 3v6c0 5-3.5 8-8 9c-4.5-1-8-4-8-9V6z" />
  </Ic>
);

const IconCrystal = (p) => (
  <Ic {...p}>
    <path d="M12 3l7 7l-7 11l-7-11z" />
    <path d="M5 10h14" />
  </Ic>
);
const IconRocket = (p) => (
  <Ic {...p}>
    <path d="M5 13l-2 6l6-2" />
    <path d="M14 6c4-1 5 0 5 0s1 1 0 5c-1 3-6 7-9 8l-4-4c1-3 5-8 8-9z" />
    <circle cx="14" cy="10" r="1.2" />
  </Ic>
);
const IconEye = (p) => (
  <Ic {...p}>
    <path d="M2 12s3.5-7 10-7s10 7 10 7s-3.5 7-10 7s-10-7-10-7z" />
    <circle cx="12" cy="12" r="3" />
  </Ic>
);
const IconUfo = (p) => (
  <Ic {...p}>
    <ellipse cx="12" cy="14" rx="9" ry="3" />
    <path d="M7 13a5 5 0 0 1 10 0" />
    <path d="M5 18l-1 2M19 18l1 2M12 18v3" />
  </Ic>
);

const IconArrowRight = (p) => <Ic {...p} d="M5 12h14M13 5l7 7l-7 7" />;
const IconCheck = (p) => <Ic {...p} d="M5 12l5 5l10-12" />;
const IconChevron = (p) => <Ic {...p} d="M6 9l6 6l6-6" />;
const IconClose = (p) => <Ic {...p} d="M6 6l12 12M18 6l-12 12" />;
const IconMail = (p) => (
  <Ic {...p}>
    <rect x="3" y="5" width="18" height="14" rx="2" />
    <path d="M3 7l9 6l9-6" />
  </Ic>
);
const IconChat = (p) => (
  <Ic {...p}>
    <path d="M4 5h16v11H8l-4 4z" />
  </Ic>
);
const IconPin = (p) => (
  <Ic {...p}>
    <path d="M12 21s7-7 7-12a7 7 0 0 0-14 0c0 5 7 12 7 12z" />
    <circle cx="12" cy="9" r="2.5" />
  </Ic>
);
const IconLinkedIn = (p) => (
  <Ic {...p}>
    <rect x="3" y="3" width="18" height="18" rx="2" />
    <path d="M7 10v7M7 7v.01M11 17v-7M11 13c0-3 4-3 4 0v4" />
  </Ic>
);
const IconGitHub = (p) => (
  <Ic {...p}>
    <path d="M9 19c-4 1.5-4-2-6-2.5M15 21v-3.5c0-1 0.1-1.5-.5-2c3-.3 5.5-1.5 5.5-6c0-1.2-.4-2.3-1.1-3.2c.3-1 .3-2-.1-3c0 0-1-.3-3.5 1.3a12 12 0 0 0-6 0C7 2.7 6 3 6 3c-.4 1-.4 2-.1 3A4.6 4.6 0 0 0 4.8 9c0 4.5 2.5 5.7 5.5 6c-.6.5-.6 1.2-.5 2V21" />
  </Ic>
);
const IconBehance = (p) => (
  <Ic {...p}>
    <path d="M3 6h5a2.5 2.5 0 0 1 0 5h-5z" />
    <path d="M3 11h6a2.5 2.5 0 0 1 0 5h-6z" />
    <path d="M3 6v10" />
    <path d="M14 8h4" />
    <path d="M14 14c0-2 1-3 3-3s3 1 3 3h-6c0 2 1 3 3 3" />
  </Ic>
);
const IconWhatsApp = (p) => (
  <Ic {...p}>
    <path d="M3 21l1.65-4.5A9 9 0 1 1 8 19.4z" />
    <path d="M9 9c0 5 5 5 5 5c1 0 1.5-.5 2-1l1.5 1.5c-.5 1-1.5 2-3 2c-3 0-7-4-7-7c0-1.5 1-2.5 2-3l1.5 1.5c-.5.5-1 1-1 2z" />
  </Ic>
);
const IconSparkle = (p) => (
  <Ic {...p}>
    <path d="M12 3v6M12 15v6M3 12h6M15 12h6" />
    <path d="M5 5l3 3M16 16l3 3M5 19l3-3M16 8l3-3" />
  </Ic>
);

Object.assign(window, {
  IconGlobe, IconMobile, IconSocial, IconPaint, IconRobot, IconServer,
  IconBolt, IconChip, IconShield,
  IconCrystal, IconRocket, IconEye, IconUfo,
  IconArrowRight, IconCheck, IconChevron, IconClose,
  IconMail, IconChat, IconPin,
  IconLinkedIn, IconGitHub, IconBehance, IconWhatsApp, IconSparkle,
});
