// Shared brand marks + placeholders used across all three directions.
// Trident logo — geometric, restrained. Place in a colored span; `currentColor` drives stroke.
function TridentMark({ size = 32, stroke = 1.5 }) {
return (
);
}
// Compass rose — used as ornamental flourish.
function CompassRose({ size = 48, style = {} }) {
return (
);
}
// Greek-key meander band — classical ornamental rule.
function GreekKeyBand({ color = '#C9A961', height = 22, opacity = 0.55 }) {
const unit = 16;
const pattern = (
);
return (
);
}
// Cinematic photo placeholder — striped, with monospace label.
function ImagePlaceholder({ ratio = '16/9', label = 'cinematic placeholder', tone = 'navy' }) {
const palette = tone === 'cream'
? { bg: '#1A2B3F', stripe: '#0A1929', text: '#C7A858' }
: tone === 'light'
? { bg: '#E8E2D2', stripe: '#D8D1BC', text: '#6E5A1E' }
: { bg: '#112338', stripe: '#0B1828', text: '#C9A961' };
return (
[ photo · {label} ]
IMG · 16:9 · DROP-IN
);
}
// PortCall.ai anchor mark: gold anchor body, teal heartbeat waveform across the
// stock, Greek-key meander inside the top ring. Two-color (props let callers
// theme it on dark or light backgrounds).
function AnchorMark({ size = 32, gold = '#D4B36A', teal = '#2DD4BF', stroke = 2 }) {
const ringR = 5;
return (
);
}
// PortCall.ai full wordmark lockup — anchor + "PortCall" (gold) + ".ai" (teal).
function PortCallLockup({ height = 28, gold = '#D4B36A', teal = '#2DD4BF', fontFamily }) {
return (
PortCall.ai
);
}
Object.assign(window, {
TridentMark, AnchorMark, PortCallLockup, CompassRose, GreekKeyBand, ImagePlaceholder,
});