Layout 39



import { Button } from "@relume_io/relume-ui";
import type { ButtonProps } from "@relume_io/relume-ui";
import { RxChevronRight } from "react-icons/rx";
type Props = {
tagline: string;
heading: string;
description: string;
buttons: ButtonProps[];
video: string;
videoType: string;
};
export type Layout39Props = React.ComponentPropsWithoutRef<"section"> & Partial<Props>;
export const Layout39 = (props: Layout39Props) => {
const { tagline, heading, buttons, description, video, videoType } = {
...Layout39Defaults,
...props,
};
return (
<section id="relume" className="relative px-[5%] py-16 md:py-24 lg:py-28">
<div className="container relative z-10">
<div className="w-full max-w-md">
<p className="mb-3 font-semibold text-text-alternative md:mb-4">{tagline}</p>
<h2 className="mb-5 text-5xl font-bold text-text-alternative md:mb-6 md:text-7xl lg:text-8xl">
{heading}
</h2>
<p className="text-text-alternative md:text-md">{description}</p>
<div className="mt-6 flex flex-wrap items-center gap-4 md:mt-8">
{buttons.map((button, index) => (
<Button key={index} {...button}>
{button.title}
</Button>
))}
</div>
</div>
</div>
<div className="absolute inset-0 z-0">
<video className="absolute inset-0 aspect-video size-full object-cover" autoPlay loop muted>
<source src={video} type={videoType} />
</video>
<div className="absolute inset-0 bg-black/50" />
</div>
</section>
);
};
export const Layout39Defaults: Props = {
tagline: "Tagline",
heading: "Medium length section heading goes here",
description:
"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat.",
buttons: [
{ title: "Button", variant: "secondary-alt" },
{
title: "Button",
variant: "link-alt",
size: "link",
iconRight: <RxChevronRight />,
},
],
video: "https://d22po4pjz3o32e.cloudfront.net/placeholder-video.mp4",
videoType: "video/mp4",
};
Need help?
For installation guidelines and API information, visit the docs.
Examples
No items found.