37 lines
2.0 KiB
TypeScript
37 lines
2.0 KiB
TypeScript
'use client';
|
|
import { motion } from 'framer-motion';
|
|
import { Container } from '@/components/primitives/Container';
|
|
import { CTA } from '@/components/primitives/CTA';
|
|
import { Wordmark } from '@/components/primitives/Wordmark';
|
|
import { cierre } from '@/lib/content';
|
|
import { fadeInUp, staggerContainer, viewportOnce, usePrefersReducedMotion, motionProps } from '@/lib/motion';
|
|
|
|
export function Cierre() {
|
|
const reduced = usePrefersReducedMotion();
|
|
const { whatsapp, email, linkedin } = cierre.contact;
|
|
return (
|
|
<section id="contacto" className="bg-bg-dark text-cream">
|
|
<Container className="py-24 md:py-32 text-center">
|
|
<motion.div variants={staggerContainer} initial="hidden" whileInView="visible" viewport={viewportOnce} {...motionProps(reduced)}
|
|
className="flex flex-col items-center">
|
|
<motion.div variants={fadeInUp}><Wordmark size="lg" onDark /></motion.div>
|
|
<motion.blockquote variants={fadeInUp}
|
|
className="mt-10 font-serif italic text-2xl md:text-4xl font-bold leading-snug max-w-3xl">
|
|
<span className="text-gold-bright">“</span>{cierre.quote}<span className="text-gold-bright">”</span>
|
|
</motion.blockquote>
|
|
<motion.div variants={fadeInUp} className="mt-10">
|
|
<CTA href={whatsapp.href} label={cierre.cta} variant="dark" />
|
|
</motion.div>
|
|
<motion.ul variants={fadeInUp} className="mt-12 flex flex-wrap justify-center gap-6 text-sm">
|
|
<li><a href={whatsapp.href} className="hover:text-gold-bright transition-colors">{whatsapp.label}</a></li>
|
|
<li aria-hidden="true" className="text-muted-dark">·</li>
|
|
<li><a href={email.href} className="hover:text-gold-bright transition-colors">{email.label}</a></li>
|
|
<li aria-hidden="true" className="text-muted-dark">·</li>
|
|
<li><a href={linkedin.href} className="hover:text-gold-bright transition-colors">{linkedin.label}</a></li>
|
|
</motion.ul>
|
|
</motion.div>
|
|
</Container>
|
|
</section>
|
|
);
|
|
}
|