Spaces:
Running
Running
"use client"; | |
import { SectionHeader } from "@/components/home/section-header"; | |
import { siteConfig } from "@/lib/home"; | |
export function BentoSection() { | |
const { title, description, items } = siteConfig.bentoSection; | |
return ( | |
<section | |
id="bento" | |
className="flex flex-col items-center justify-center w-full relative" | |
> | |
<div className="border-x mx-auto relative w-full max-w-6xl px-6"> | |
<SectionHeader> | |
<h2 className="text-3xl md:text-4xl font-medium tracking-tighter text-center text-balance pb-1"> | |
{title} | |
</h2> | |
<p className="text-muted-foreground text-center text-balance font-medium"> | |
{description} | |
</p> | |
</SectionHeader> | |
<div className="grid grid-cols-1 md:grid-cols-2 overflow-hidden"> | |
{items.map((item) => ( | |
<div | |
key={item.id} | |
className="flex flex-col items-start justify-end min-h-[600px] md:min-h-[500px] p-0.5 relative before:absolute before:-left-0.5 before:top-0 before:z-10 before:h-screen before:w-px before:bg-border before:content-[''] after:absolute after:-top-0.5 after:left-0 after:z-10 after:h-px after:w-screen after:bg-border after:content-[''] group cursor-pointer max-h-[400px] group" | |
> | |
<div className="relative flex size-full items-center justify-center h-full overflow-hidden"> | |
{item.content} | |
</div> | |
<div className="flex-1 flex-col gap-2 p-6"> | |
<h3 className="text-lg tracking-tighter font-semibold"> | |
{item.title} | |
</h3> | |
<p className="text-muted-foreground">{item.description}</p> | |
</div> | |
</div> | |
))} | |
</div> | |
</div> | |
</section> | |
); | |
} | |