38 lines
882 B
TypeScript
38 lines
882 B
TypeScript
import { cn } from "@/lib/utils";
|
|
|
|
type SectionHeadingProps = {
|
|
eyebrow: string;
|
|
title: string;
|
|
description: string;
|
|
align?: "left" | "center";
|
|
className?: string;
|
|
};
|
|
|
|
export function SectionHeading({
|
|
eyebrow,
|
|
title,
|
|
description,
|
|
align = "left",
|
|
className,
|
|
}: SectionHeadingProps) {
|
|
return (
|
|
<div
|
|
className={cn(
|
|
"space-y-4",
|
|
align === "center" && "mx-auto max-w-3xl text-center",
|
|
className,
|
|
)}
|
|
>
|
|
<p className="text-xs font-semibold uppercase tracking-[0.16em] text-muted-foreground">
|
|
{eyebrow}
|
|
</p>
|
|
<h2 className="max-w-4xl text-balance text-3xl font-semibold tracking-[-0.05em] text-foreground sm:text-4xl lg:text-5xl">
|
|
{title}
|
|
</h2>
|
|
<p className="max-w-3xl text-sm leading-7 text-muted-foreground sm:text-[1.02rem]">
|
|
{description}
|
|
</p>
|
|
</div>
|
|
);
|
|
}
|