hero
This commit is contained in:
parent
9dee741e28
commit
8b07137b5d
1 changed files with 35 additions and 51 deletions
|
|
@ -170,9 +170,10 @@ function Background({ isDark }: { isDark: boolean }) {
|
|||
type HeroProps = Pick<Page['hero'], 'richText' | 'links'>
|
||||
|
||||
function HeroSection({ isDark, richText, links }: HeroProps & { isDark: boolean }) {
|
||||
const richTextColor = isDark ? 'text-white' : 'text-black'
|
||||
const muted = isDark ? 'text-white/55' : 'text-black/55'
|
||||
const borderLine = isDark ? 'bg-white/10' : 'bg-black/10'
|
||||
const borderLineFaint = isDark ? 'bg-white/5' : 'bg-black/5'
|
||||
const richTextColor = isDark ? 'text-white' : 'text-black'
|
||||
|
||||
return (
|
||||
<section className="relative mx-auto w-full max-w-5xl">
|
||||
|
|
@ -192,57 +193,40 @@ function HeroSection({ isDark, richText, links }: HeroProps & { isDark: boolean
|
|||
|
||||
<div className="relative flex flex-col items-center justify-center gap-5 pt-32 pb-28 px-6 text-center">
|
||||
|
||||
{/* Ghost glass box */}
|
||||
<div
|
||||
style={{
|
||||
background: 'rgba(255,255,255,0.03)',
|
||||
border: '1px solid rgba(255,255,255,0.08)',
|
||||
backdropFilter: 'blur(8px)',
|
||||
borderRadius: 16,
|
||||
padding: '40px 48px',
|
||||
display: 'flex',
|
||||
flexDirection: 'column',
|
||||
alignItems: 'center',
|
||||
gap: 20,
|
||||
maxWidth: 580,
|
||||
width: '100%',
|
||||
}}
|
||||
>
|
||||
{/* Rich text from Payload */}
|
||||
{richText && (
|
||||
<RichText
|
||||
className={cn(
|
||||
'fade-in slide-in-from-bottom-10 animate-in fill-mode-backwards delay-100 duration-500 ease-out',
|
||||
'max-w-[36.5rem] text-center',
|
||||
richTextColor
|
||||
)}
|
||||
data={richText}
|
||||
enableGutter={false}
|
||||
/>
|
||||
)}
|
||||
{/* Rich text from Payload */}
|
||||
{richText && (
|
||||
<RichText
|
||||
className={cn(
|
||||
'fade-in slide-in-from-bottom-10 animate-in fill-mode-backwards delay-100 duration-500 ease-out',
|
||||
'max-w-[36.5rem] text-center',
|
||||
richTextColor
|
||||
)}
|
||||
data={richText}
|
||||
enableGutter={false}
|
||||
/>
|
||||
)}
|
||||
|
||||
{/* Links from Payload */}
|
||||
{Array.isArray(links) && links.length > 0 && (
|
||||
<div className="fade-in slide-in-from-bottom-10 animate-in fill-mode-backwards delay-300 duration-500 ease-out flex flex-wrap items-center justify-center gap-3">
|
||||
{links.map(({ link }, i) => (
|
||||
<CMSLink
|
||||
key={i}
|
||||
{...link}
|
||||
className={cn(
|
||||
'flex items-center gap-2 rounded-full px-5 py-2.5 text-sm font-medium transition-all',
|
||||
i === 0
|
||||
? isDark
|
||||
? 'bg-white text-black hover:bg-white/90'
|
||||
: 'bg-black text-white hover:bg-black/85'
|
||||
: isDark
|
||||
? 'border border-white/25 text-white hover:bg-white/8'
|
||||
: 'border border-black/20 text-black hover:bg-black/5'
|
||||
)}
|
||||
/>
|
||||
))}
|
||||
</div>
|
||||
)}
|
||||
</div>
|
||||
{/* Links from Payload */}
|
||||
{Array.isArray(links) && links.length > 0 && (
|
||||
<div className="fade-in slide-in-from-bottom-10 animate-in fill-mode-backwards delay-300 duration-500 ease-out flex flex-wrap items-center justify-center gap-3 pt-2">
|
||||
{links.map(({ link }, i) => (
|
||||
<CMSLink
|
||||
key={i}
|
||||
{...link}
|
||||
className={cn(
|
||||
'flex items-center gap-2 rounded-full px-5 py-2.5 text-sm font-medium transition-all',
|
||||
i === 0
|
||||
? isDark
|
||||
? 'bg-white text-black hover:bg-white/90'
|
||||
: 'bg-black text-white hover:bg-black/85'
|
||||
: isDark
|
||||
? 'border border-white/25 text-white hover:bg-white/8'
|
||||
: 'border border-black/20 text-black hover:bg-black/5'
|
||||
)}
|
||||
/>
|
||||
))}
|
||||
</div>
|
||||
)}
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue