/* Inline SVG icons — clean medical/clinical line set
Usage:
*/
const ICONS = {
// segments
user: <>>,
stethoscope: <>>,
hospital: <>>,
building: <>>,
// services
beaker: <>>,
microscope: <>>,
dna: <>>,
virus: <>>,
tube: <>>,
shield: <>>,
pulse: <>>,
scan: <>>,
briefcase: <>>,
// utility
arrow: <>>,
arrowDown: <>>,
plus: <>>,
check: <>>,
search: <>>,
close: <>>,
filter: <>>,
sort: <>>,
whatsapp: <>>,
phone: <>>,
mail: <>>,
pin: <>>,
clock: <>>,
calendar: <>>,
home: <>>,
drop: <>>,
monitor: <>>,
clipboard: <>>,
route: <>>,
award: <>>,
receipt: <>>,
docCheck: <>>,
chevron: <>>,
// ops icons
grid: <>>,
layers: <>>,
trending: <>>,
link: <>>,
network: <>>,
// socials
fb: <>>,
ig: <>>,
li: <>>,
yt: <>>,
// menu
menu: <>>,
};
function Icon({ name, size = 22, stroke = 1.6, className = "", style = {} }) {
const path = ICONS[name];
if (!path) return null;
return (
);
}
// Decorative molecule swirl (SVG) — echoes the logo's microbial spiral
function MoleculeSwirl({ color = "rgba(255,255,255,.55)", className = "molecule" }) {
// randomized-looking but deterministic positions
const dots = [];
let r = 30, t = 0;
for (let i = 0; i < 80; i++) {
t += 0.42;
r += 1.6;
const cx = 50 + r * Math.cos(t);
const cy = 50 + r * Math.sin(t);
const radius = 0.6 + Math.sin(i * 0.7) * 0.5 + (i % 9 === 0 ? 2 : 0.5);
dots.push();
}
return (
);
}
Object.assign(window, { Icon, MoleculeSwirl, ICONS });