/* Lucide icons (ISC-licensed) — copied paths, 24×24, 2px stroke, round caps.
Single source for all marketing-page iconography so stroke weight stays consistent. */
function Svg({ size = 24, stroke = 'currentColor', sw = 1.8, children, ...rest }) {
return (
);
}
const IconFuel = (p) => ();
const IconRoute = (p) => ();
const IconBus = (p) => ();
const IconShield = (p) => ();
const IconEuro = (p) => ();
const IconLock = (p) => ();
const IconUserCheck = (p) => ();
const IconGauge = (p) => ();
const IconArrowRight = (p) => ();
const IconStar = (p) => ();
const IconCheck = (p) => ();
const IconMenu = (p) => ();
const IconPin = (p) => ();
const IconClock = (p) => ();
const IconLeaf = (p) => ();
const IconCalendar = (p) => ();
Object.assign(window, {
IconFuel, IconRoute, IconBus, IconShield, IconEuro, IconLock, IconUserCheck,
IconGauge, IconArrowRight, IconStar, IconCheck, IconMenu, IconPin, IconClock,
IconLeaf, IconCalendar,
});
/* Shared line-art car — clean outlined crossover used across the whole site. */
if (typeof document !== 'undefined' && !document.getElementById('linecar-kf')) {
const s = document.createElement('style');
s.id = 'linecar-kf';
s.textContent = '@keyframes lineWheel{to{transform:rotate(360deg)}}';
document.head.appendChild(s);
}
function LineCar({ width = 150, moving = false, style }) {
const B = 'var(--blue)';
const G = 'rgba(40,159,252,0.08)';
const h = Math.round(width * 116 / 208);
const Wheel = ({ cx, cy }) => (
{/* bold tyre + rim ring + 10 spokes + hub (matches reference) */}
{Array.from({ length: 10 }).map((_, i) => {
const a = (i * 36) * Math.PI / 180;
return (
);
})}
);
return (
);
}
window.LineCar = LineCar;
/* Filled blue van with waving passengers — count = how many passengers show (1–4).
3/4 front view, brand-blue body, friendly flat illustration. */
function CarpoolVan({ width = 240, count = 4, moving = false }) {
const NAVY = 'var(--navy-800)';
const BLUE = 'var(--blue)';
const DK = '#0B63B8'; // darker blue shadow side
const GLASS = '#CFE6FF';
const h = Math.round(width * 150 / 230);
const skin = ['#F1C9A5', '#E8B68C', '#F3D2B3', '#D89B6E'];
const hair = ['#2A2A33', '#4A3327', '#1F1F26', '#5C4630'];
// passenger slots inside the cabin (x,y of head centre)
const seatsXY = [
{ x: 78, y: 50 }, // front-left (driver) waving
{ x: 110, y: 44 }, // back, arm up
{ x: 138, y: 50 }, // mid
{ x: 165, y: 52 }, // right
];
const Passenger = ({ x, y, i, wave }) => (
{/* waving arm (only some) */}
{wave && (
)}
{/* body */}
{/* head */}
{/* hair */}
);
return (
);
}
window.CarpoolVan = CarpoolVan;