149 lines
4.9 KiB
TypeScript
149 lines
4.9 KiB
TypeScript
import type { LucideIcon } from "lucide-react";
|
|
import {
|
|
Building2,
|
|
CircleDot,
|
|
Compass,
|
|
Home,
|
|
Landmark,
|
|
LayoutGrid,
|
|
} from "lucide-react";
|
|
|
|
import { cn } from "@/lib/utils";
|
|
|
|
type CardItem = {
|
|
id: string;
|
|
title: string;
|
|
description: string;
|
|
image: string;
|
|
imageAlt: string;
|
|
icon: LucideIcon;
|
|
wide?: boolean;
|
|
};
|
|
|
|
const CARDS: CardItem[] = [
|
|
{
|
|
id: "sustainable-design",
|
|
title: "تحلیل کانال",
|
|
description:
|
|
"ببینید کدام کانال بیشترین سرنخ با کیفیت را میآورد.",
|
|
image:
|
|
"/block-media/external/unsplash/photo-1647517649469-ba454dc72896.jpg",
|
|
imageAlt: "تحلیل عملکرد کمپین",
|
|
icon: Building2,
|
|
wide: true,
|
|
},
|
|
{
|
|
id: "urban-planning",
|
|
title: "اتوماسیون ایمیل",
|
|
description:
|
|
"مسیرهای ایمیل را بدون کدنویسی برای هر سگمنت طراحی کنید.",
|
|
image:
|
|
"/block-media/external/unsplash/photo-1698516923132-b0236bc8f3ef.jpg",
|
|
imageAlt: "نمودار ROI",
|
|
icon: Landmark,
|
|
},
|
|
{
|
|
id: "digital-integration",
|
|
title: "A/B تست",
|
|
description:
|
|
"عنوان، تصویر یا فراخوان را تست کنید و برنده را سریع پیدا کنید.",
|
|
image:
|
|
"/block-media/external/unsplash/photo-1586869871566-d8e41dd50318.jpg",
|
|
imageAlt: "داشبورد بازاریابی دیجیتال",
|
|
icon: LayoutGrid,
|
|
},
|
|
{
|
|
id: "bim-solutions",
|
|
title: "تقویم محتوا",
|
|
description:
|
|
"چند کانال را همزمان اجرا کنید و عملکرد هر کمپین را در یک نما مقایسه کنید.",
|
|
image:
|
|
"/block-media/external/unsplash/photo-1588742415209-69dbb64791b6.jpg",
|
|
imageAlt: "تحلیل عملکرد کمپین",
|
|
icon: Compass,
|
|
wide: true,
|
|
},
|
|
{
|
|
id: "heritage-preservation",
|
|
title: "ردیابی UTM",
|
|
description:
|
|
"مخاطبان را بر اساس رفتار، صنعت یا مرحله خرید دستهبندی کنید.",
|
|
image:
|
|
"/block-media/external/unsplash/photo-1587278163304-99d65f6a58f0.jpg",
|
|
imageAlt: "نمودار ROI",
|
|
icon: Home,
|
|
wide: true,
|
|
},
|
|
{
|
|
id: "interior-innovation",
|
|
title: "گزارش ROI",
|
|
description:
|
|
"ببینید کدام کانال بیشترین سرنخ با کیفیت را میآورد.",
|
|
image:
|
|
"/block-media/external/unsplash/photo-1589100787575-fad1dcaa9d17.jpg",
|
|
imageAlt: "داشبورد بازاریابی دیجیتال",
|
|
icon: CircleDot,
|
|
},
|
|
];
|
|
|
|
interface Feature202Props {
|
|
className?: string;
|
|
}
|
|
|
|
const Feature202 = ({ className }: Feature202Props) => {
|
|
return (
|
|
<section dir="rtl" lang="fa" className={cn("py-32", className)}>
|
|
<div className="container">
|
|
<div className="mx-auto max-w-3xl text-center">
|
|
<div className="text-xs text-muted-foreground md:text-sm">کمپین</div>
|
|
<h2 className="mt-4 mb-8 text-xl font-semibold text-balance md:text-2xll">
|
|
رشد برند
|
|
</h2>
|
|
<p className="text-base text-pretty text-muted-foreground md:text-lg">
|
|
کمپینهایی بسازید که واقعاً تبدیل میشوند
|
|
</p>
|
|
</div>
|
|
<div className="mt-8 grid gap-4 lg:grid-cols-3">
|
|
{CARDS.map((card) => {
|
|
const Icon = card.icon;
|
|
|
|
return (
|
|
<a
|
|
key={card.id}
|
|
href="#"
|
|
className={cn(
|
|
"group relative isolate h-80 overflow-hidden rounded-2xl border border-border transition-transform duration-300 hover:-translate-y-0.5",
|
|
card.wide && "lg:col-span-2",
|
|
)}
|
|
>
|
|
<div className="absolute inset-0 -z-10 bg-linear-to-t from-primary to-transparent" />
|
|
<img
|
|
src={card.image}
|
|
alt={card.imageAlt}
|
|
className="absolute inset-0 -z-20 size-full rounded-2xl object-cover grayscale-100 transition-all duration-300 group-hover:grayscale-50"
|
|
/>
|
|
<div className="flex h-full flex-col justify-between p-10">
|
|
<span className="flex size-12 items-center justify-center rounded-xl border border-background/20 bg-background/15 backdrop-blur-sm">
|
|
<Icon
|
|
className="size-5 text-background"
|
|
strokeWidth={1.5}
|
|
/>
|
|
</span>
|
|
<div className="text-start">
|
|
<h3 className="font-medium text-background">{card.title}</h3>
|
|
<p className="mt-2 text-pretty text-background/70">
|
|
{card.description}
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</a>
|
|
);
|
|
})}
|
|
</div>
|
|
</div>
|
|
</section>
|
|
);
|
|
};
|
|
|
|
export { Feature202 };
|