update home page
This commit is contained in:
@@ -7,21 +7,36 @@ export function PricingSection() {
|
||||
{
|
||||
name: "Basic",
|
||||
target: "Great for private individuals",
|
||||
features: ["1 User", "Unlimited Projects", "Download prototypes", "1 Gb workspace"],
|
||||
features: [
|
||||
"1 User",
|
||||
"Unlimited Projects",
|
||||
"Download prototypes",
|
||||
"1 Gb workspace",
|
||||
],
|
||||
price: "Free",
|
||||
isPopular: false,
|
||||
},
|
||||
{
|
||||
name: "Premium",
|
||||
target: "14 days free period",
|
||||
features: ["15 Users", "Unlimited Projects", "Download prototypes", "15 Gb workspace"],
|
||||
features: [
|
||||
"15 Users",
|
||||
"Unlimited Projects",
|
||||
"Download prototypes",
|
||||
"15 Gb workspace",
|
||||
],
|
||||
price: "$ 59 /mo",
|
||||
isPopular: true,
|
||||
},
|
||||
{
|
||||
name: "Unlimited",
|
||||
target: "Great for private individuals",
|
||||
features: ["100 Users", "Unlimited Projects", "Download prototypes", "100 Gb workspace"],
|
||||
features: [
|
||||
"100 Users",
|
||||
"Unlimited Projects",
|
||||
"Download prototypes",
|
||||
"100 Gb workspace",
|
||||
],
|
||||
price: "$ 199 /mo",
|
||||
isPopular: false,
|
||||
},
|
||||
@@ -43,24 +58,46 @@ export function PricingSection() {
|
||||
<div
|
||||
key={i}
|
||||
className={`relative flex flex-col overflow-hidden rounded-[25px] border ${
|
||||
plan.isPopular ? "border-aiero-teal bg-aiero-card-dark" : "border-aiero-card-border bg-aiero-dark"
|
||||
plan.isPopular
|
||||
? "border-tenext-teal bg-tenext-card-dark"
|
||||
: "border-tenext-card-border bg-tenext-dark"
|
||||
} p-10`}
|
||||
>
|
||||
{plan.isPopular && (
|
||||
<div className="absolute right-6 top-6 rounded-full bg-aiero-teal px-4 py-1 text-[12px] font-bold uppercase text-aiero-dark" style={{ fontFamily: "var(--font-sora)" }}>
|
||||
<div
|
||||
className="absolute right-6 top-6 rounded-full bg-tenext-teal px-4 py-1 text-[12px] font-bold uppercase text-tenext-dark"
|
||||
style={{ fontFamily: "var(--font-sora)" }}
|
||||
>
|
||||
Popular
|
||||
</div>
|
||||
)}
|
||||
<h3 className="mb-2 text-[24px] font-bold text-white" style={{ fontFamily: "var(--font-dm-sans)" }}>
|
||||
<h3
|
||||
className="mb-2 text-[24px] font-bold text-white"
|
||||
style={{ fontFamily: "var(--font-dm-sans)" }}
|
||||
>
|
||||
{plan.name}
|
||||
</h3>
|
||||
<p className="mb-8 text-[14px] text-aiero-text-muted">{plan.target}</p>
|
||||
<p className="mb-8 text-[14px] text-tenext-text-muted">
|
||||
{plan.target}
|
||||
</p>
|
||||
|
||||
<ul className="mb-10 flex flex-col gap-4">
|
||||
{plan.features.map((feat, j) => (
|
||||
<li key={j} className="flex items-center gap-3 text-white">
|
||||
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" className="text-aiero-teal">
|
||||
<path d="M20 6L9 17l-5-5" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round"/>
|
||||
<svg
|
||||
width="18"
|
||||
height="18"
|
||||
viewBox="0 0 24 24"
|
||||
fill="none"
|
||||
className="text-tenext-teal"
|
||||
>
|
||||
<path
|
||||
d="M20 6L9 17l-5-5"
|
||||
stroke="currentColor"
|
||||
strokeWidth="2"
|
||||
strokeLinecap="round"
|
||||
strokeLinejoin="round"
|
||||
/>
|
||||
</svg>
|
||||
{feat}
|
||||
</li>
|
||||
@@ -68,15 +105,18 @@ export function PricingSection() {
|
||||
</ul>
|
||||
|
||||
<div className="mt-auto">
|
||||
<div className="mb-6 text-[36px] font-bold text-white" style={{ fontFamily: "var(--font-dm-sans)" }}>
|
||||
<div
|
||||
className="mb-6 text-[36px] font-bold text-white"
|
||||
style={{ fontFamily: "var(--font-dm-sans)" }}
|
||||
>
|
||||
{plan.price}
|
||||
</div>
|
||||
<a
|
||||
href="#"
|
||||
className={`flex w-full items-center justify-center rounded-[12px] py-4 text-[16px] font-bold transition-all ${
|
||||
plan.isPopular
|
||||
? "bg-aiero-teal text-aiero-dark hover:bg-white"
|
||||
: "border border-aiero-card-border text-white hover:border-aiero-teal hover:text-aiero-teal"
|
||||
? "bg-tenext-teal text-tenext-dark hover:bg-white"
|
||||
: "border border-tenext-card-border text-white hover:border-tenext-teal hover:text-tenext-teal"
|
||||
}`}
|
||||
style={{ fontFamily: "var(--font-sora)" }}
|
||||
>
|
||||
|
||||
@@ -27,11 +27,11 @@ export function ServiceCardsGrid() {
|
||||
{services.map((svc, i) => (
|
||||
<div
|
||||
key={i}
|
||||
className="group relative flex h-full min-h-[340px] flex-col justify-between overflow-hidden rounded-[25px] border border-aiero-card-border bg-aiero-card-dark p-10 transition-all hover:bg-aiero-card-purple"
|
||||
className="group relative flex h-full min-h-[340px] flex-col justify-between overflow-hidden rounded-[25px] border border-tenext-card-border bg-tenext-card-dark p-10 transition-all hover:bg-tenext-card-purple"
|
||||
>
|
||||
<div className="mb-6 h-[60px] w-[60px] rounded-full bg-aiero-card-purple2 p-4">
|
||||
<div className="mb-6 h-[60px] w-[60px] rounded-full bg-tenext-card-purple2 p-4">
|
||||
<img
|
||||
src="/images/aiero/3x.png"
|
||||
src="/images/tenext/3x.png"
|
||||
alt="Icon"
|
||||
className="h-full w-full object-contain"
|
||||
onError={(e) => {
|
||||
@@ -43,15 +43,15 @@ export function ServiceCardsGrid() {
|
||||
|
||||
<div>
|
||||
<h4
|
||||
className="mb-4 text-[22px] font-bold text-white transition-colors group-hover:text-aiero-teal"
|
||||
className="mb-4 text-[22px] font-bold text-white transition-colors group-hover:text-tenext-teal"
|
||||
style={{ fontFamily: "var(--font-dm-sans)" }}
|
||||
>
|
||||
{svc.title}
|
||||
</h4>
|
||||
<p className="text-[16px] text-aiero-text-muted">{svc.desc}</p>
|
||||
<p className="text-[16px] text-tenext-text-muted">{svc.desc}</p>
|
||||
</div>
|
||||
|
||||
<div className="absolute bottom-0 right-0 flex h-[60px] w-[60px] items-center justify-center rounded-tl-[25px] bg-white text-aiero-dark transition-all duration-300 group-hover:bg-aiero-teal group-hover:text-white">
|
||||
<div className="absolute bottom-0 right-0 flex h-[60px] w-[60px] items-center justify-center rounded-tl-[25px] bg-white text-tenext-dark transition-all duration-300 group-hover:bg-tenext-teal group-hover:text-white">
|
||||
<ArrowIcon className="h-4 w-4" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -32,9 +32,21 @@ export function ServiceFeaturesSection() {
|
||||
];
|
||||
|
||||
const DefaultIcon = () => (
|
||||
<div className="flex h-full w-full items-center justify-center rounded-[18px] bg-aiero-card-purple">
|
||||
<svg width="32" height="32" viewBox="0 0 24 24" fill="none" className="text-white">
|
||||
<path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round"/>
|
||||
<div className="flex h-full w-full items-center justify-center rounded-[18px] bg-tenext-card-purple">
|
||||
<svg
|
||||
width="32"
|
||||
height="32"
|
||||
viewBox="0 0 24 24"
|
||||
fill="none"
|
||||
className="text-white"
|
||||
>
|
||||
<path
|
||||
d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"
|
||||
stroke="currentColor"
|
||||
strokeWidth="2"
|
||||
strokeLinecap="round"
|
||||
strokeLinejoin="round"
|
||||
/>
|
||||
</svg>
|
||||
</div>
|
||||
);
|
||||
|
||||
@@ -4,65 +4,84 @@ import { PageContainer } from "@/components/shared/PageContainer";
|
||||
import { SectionContainer } from "@/components/shared/SectionContainer";
|
||||
import { SectionHeading } from "@/components/shared/SectionHeading";
|
||||
|
||||
export function TestimonialsSection() {
|
||||
const testimonials = [
|
||||
{
|
||||
text: "Working with Aiero has been a game-changer for our business. Their AI solutions have revolutionized our operations, enabling us to automate repetitive tasks and make data-driven decisions. The level of efficiency we've achieved is unprecedented.",
|
||||
author: "David Smith",
|
||||
role: "CEO Company",
|
||||
},
|
||||
{
|
||||
text: "Aiero has been a game-changer for our business. Their AI solutions have revolutionized our operations, enabling us to automate repetitive tasks and make data-driven decisions. The level of efficiency we've achieved is unprecedented.",
|
||||
author: "Mark Dowson",
|
||||
role: "Manager",
|
||||
},
|
||||
];
|
||||
const testimonials = [
|
||||
{
|
||||
author: "Daniel Cross",
|
||||
text: "Working with tenext has been a game-changer for our business. Their AI solutions automated our repetitive tasks and let us make data-driven decisions fast.",
|
||||
},
|
||||
{
|
||||
author: "Marta Wolfe",
|
||||
text: "The onboarding was smooth and the support team responded within a day for every request we had. Genuinely impressed with the attention to detail.",
|
||||
},
|
||||
{
|
||||
author: "Rajiv Patel",
|
||||
text: "tenext's dashboard gave us actionable insights we didn't have before. Setup was fast and the documentation made customization painless.",
|
||||
},
|
||||
{
|
||||
author: "Daniel Cross",
|
||||
text: "Working with tenext has been a game-changer for our business. Their AI solutions automated our repetitive tasks and let us make data-driven decisions fast.",
|
||||
},
|
||||
{
|
||||
author: "Elena Novak",
|
||||
text: "Excellent customer support from the whole team. All of our integration questions were resolved within a day.",
|
||||
},
|
||||
{
|
||||
author: "Sam Okafor",
|
||||
text: "A perfect solution in every respect. The team is especially strong on support — we recommend it without hesitation.",
|
||||
},
|
||||
{
|
||||
author: "Priya Chandran",
|
||||
text: "Fast, reliable support and an API that's genuinely easy to customize. Great work all around.",
|
||||
},
|
||||
{
|
||||
author: "Marta Wolfe",
|
||||
text: "The onboarding was smooth and the support team responded within a day for every request we had. Genuinely impressed with the attention to detail.",
|
||||
},
|
||||
{
|
||||
author: "Tom Bennett",
|
||||
text: "Great platform and even better support. The team always found a solution even when the request was out of scope.",
|
||||
},
|
||||
{
|
||||
author: "Lucia Fernandez",
|
||||
text: "High quality documentation and a codebase that's genuinely easy to extend. Our developers picked it up in a day.",
|
||||
},
|
||||
{
|
||||
author: "Rajiv Patel",
|
||||
text: "tenext's dashboard gave us actionable insights we didn't have before. Setup was fast and the documentation made customization painless.",
|
||||
},
|
||||
{
|
||||
author: "Owen Marsh",
|
||||
text: "We evaluated several AI vendors and tenext stood out for speed of support and clarity of their onboarding process.",
|
||||
},
|
||||
];
|
||||
|
||||
export function TestimonialsSection() {
|
||||
return (
|
||||
<SectionContainer paddingY="lg" className="bg-aiero-card-dark">
|
||||
<SectionContainer paddingY="lg" className="bg-tenext-surface-muted">
|
||||
<PageContainer>
|
||||
<div className="mb-16">
|
||||
<div className="mb-12 max-w-[650px]">
|
||||
<SectionHeading
|
||||
tag="testimonials"
|
||||
title="Discover what our clients have to say about our AI solutions"
|
||||
titleClassName="text-white max-w-[650px]"
|
||||
title="User stories: hear what others love about our AI solutions"
|
||||
titleClassName="text-tenext-dark"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div className="grid grid-cols-1 gap-8 md:grid-cols-2">
|
||||
<div className="columns-1 gap-6 sm:columns-2 lg:columns-4">
|
||||
{testimonials.map((t, i) => (
|
||||
<div
|
||||
key={i}
|
||||
className="flex flex-col justify-between rounded-[25px] border border-aiero-card-border bg-[#1A1A1A] p-10 lg:p-12"
|
||||
className="mb-6 break-inside-avoid rounded-[20px] bg-white p-8"
|
||||
>
|
||||
<div className="mb-8">
|
||||
<div className="mb-6 flex gap-1 text-aiero-teal">
|
||||
{[...Array(5)].map((_, index) => (
|
||||
<svg key={index} width="16" height="16" viewBox="0 0 24 24" fill="currentColor">
|
||||
<path d="M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z"/>
|
||||
</svg>
|
||||
))}
|
||||
</div>
|
||||
<p className="text-[18px] leading-[1.8] text-white">"{t.text}"</p>
|
||||
</div>
|
||||
<div className="flex items-center gap-4">
|
||||
<div className="h-[60px] w-[60px] overflow-hidden rounded-full bg-aiero-dark">
|
||||
<img
|
||||
src={`/images/aiero/client-${i + 1}.jpg`}
|
||||
alt={t.author}
|
||||
className="h-full w-full object-cover"
|
||||
onError={(e) => {
|
||||
(e.target as HTMLImageElement).src = "/images/aiero/home-9-img.png";
|
||||
}}
|
||||
/>
|
||||
</div>
|
||||
<div>
|
||||
<h5 className="text-[18px] font-bold text-white" style={{ fontFamily: "var(--font-dm-sans)" }}>
|
||||
{t.author}
|
||||
</h5>
|
||||
<p className="text-[14px] text-aiero-teal">{t.role}</p>
|
||||
</div>
|
||||
</div>
|
||||
<h5
|
||||
className="mb-4 text-[18px] font-bold text-tenext-dark"
|
||||
style={{ fontFamily: "var(--font-dm-sans)" }}
|
||||
>
|
||||
{t.author}
|
||||
</h5>
|
||||
<p className="text-[15px] leading-[1.7] text-tenext-text-muted">
|
||||
{t.text}
|
||||
</p>
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user