Compare commits
6 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| b74870cc79 | |||
| 7e728e3011 | |||
| e91d297169 | |||
| ab6c60337c | |||
| 4ca2f696cb | |||
| 9054ced685 |
@@ -1,50 +1,59 @@
|
|||||||
import type { Metadata } from "next";
|
import type { Metadata } from "next";
|
||||||
import { Halant } from "next/font/google";
|
import { Geist, Geist_Mono } from "next/font/google";
|
||||||
import { Inter } from "next/font/google";
|
|
||||||
import { Roboto } from "next/font/google";
|
|
||||||
import "./globals.css";
|
import "./globals.css";
|
||||||
import { ServiceWrapper } from "@/components/ServiceWrapper";
|
|
||||||
import Tag from "@/tag/Tag";
|
|
||||||
|
|
||||||
const halant = Halant({
|
const geist = Geist({
|
||||||
variable: "--font-halant", subsets: ["latin"],
|
variable: "--font-geist-sans", subsets: ["latin"],
|
||||||
weight: ["300", "400", "500", "600", "700"],
|
|
||||||
});
|
});
|
||||||
|
|
||||||
const inter = Inter({
|
const geistMono = Geist_Mono({
|
||||||
variable: "--font-inter", subsets: ["latin"],
|
variable: "--font-geist-mono", subsets: ["latin"],
|
||||||
});
|
|
||||||
|
|
||||||
const roboto = Roboto({
|
|
||||||
variable: "--font-roboto", subsets: ["latin"],
|
|
||||||
weight: ["100", "300", "400", "500", "700", "900"],
|
|
||||||
});
|
});
|
||||||
|
|
||||||
export const metadata: Metadata = {
|
export const metadata: Metadata = {
|
||||||
title: "Home Boutique - Premium Tailored Suits | Custom Fits from Home", description: "Premium bespoke tailored suits delivered to your home. Expert craftsmanship, affordable luxury suits with custom fit. Call +91 9007961006 for personalized styling.", keywords: "tailored suits, custom suits, premium suits, bespoke tailoring, men's formal wear, home delivery suits", robots: {
|
title: "Home Boutique - Premium Tailored Suits", description: "Premium tailored suits crafted from home. Bespoke fits, premium fabrics, and exceptional craftsmanship for the modern gentleman."};
|
||||||
index: true,
|
|
||||||
follow: true,
|
|
||||||
},
|
|
||||||
openGraph: {
|
|
||||||
title: "Home Boutique - Premium Tailored Suits", description: "Discover premium bespoke tailored suits crafted from home with expert tailoring and affordable luxury.", type: "website", siteName: "Home Boutique"},
|
|
||||||
twitter: {
|
|
||||||
card: "summary_large_image", title: "Home Boutique - Premium Tailored Suits", description: "Premium bespoke tailored suits delivered to your home. Expert craftsmanship, affordable luxury."},
|
|
||||||
};
|
|
||||||
|
|
||||||
export default function RootLayout({
|
export default function RootLayout({
|
||||||
children,
|
children,
|
||||||
}: Readonly<{
|
}: {
|
||||||
children: React.ReactNode;
|
children: React.ReactNode;
|
||||||
}>) {
|
}) {
|
||||||
return (
|
return (
|
||||||
<html lang="en" suppressHydrationWarning>
|
<html lang="en" suppressHydrationWarning>
|
||||||
<ServiceWrapper>
|
<body className={`${geist.variable} ${geistMono.variable}`}>
|
||||||
<body
|
{children}
|
||||||
className={`${halant.variable} ${inter.variable} ${roboto.variable} antialiased`}
|
<script
|
||||||
>
|
id="lenis-smooth-scroll"
|
||||||
<Tag />
|
dangerouslySetInnerHTML={{
|
||||||
{children}
|
__html: `
|
||||||
|
(function() {
|
||||||
|
try {
|
||||||
|
if (typeof Lenis !== 'undefined') {
|
||||||
|
const lenis = new Lenis({
|
||||||
|
duration: 1.2,
|
||||||
|
easing: (t) => Math.min(1, 1.001 - Math.pow(2, -10 * t)),
|
||||||
|
direction: 'vertical',
|
||||||
|
gestureDirection: 'vertical',
|
||||||
|
smooth: true,
|
||||||
|
mouseMultiplier: 1,
|
||||||
|
smoothTouch: false,
|
||||||
|
touchMultiplier: 2,
|
||||||
|
infinite: false,
|
||||||
|
});
|
||||||
|
function raf(time) {
|
||||||
|
lenis.raf(time);
|
||||||
|
requestAnimationFrame(raf);
|
||||||
|
}
|
||||||
|
requestAnimationFrame(raf);
|
||||||
|
}
|
||||||
|
} catch (e) {
|
||||||
|
console.warn('Lenis not loaded');
|
||||||
|
}
|
||||||
|
})();
|
||||||
|
`,
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
|
||||||
<script
|
<script
|
||||||
dangerouslySetInnerHTML={{
|
dangerouslySetInnerHTML={{
|
||||||
__html: `
|
__html: `
|
||||||
@@ -1412,7 +1421,6 @@ export default function RootLayout({
|
|||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
</body>
|
</body>
|
||||||
</ServiceWrapper>
|
|
||||||
</html>
|
</html>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ import SocialProofOne from "@/components/sections/socialProof/SocialProofOne";
|
|||||||
import FaqBase from "@/components/sections/faq/FaqBase";
|
import FaqBase from "@/components/sections/faq/FaqBase";
|
||||||
import ContactCTA from "@/components/sections/contact/ContactCTA";
|
import ContactCTA from "@/components/sections/contact/ContactCTA";
|
||||||
import FooterLogoReveal from "@/components/sections/footer/FooterLogoReveal";
|
import FooterLogoReveal from "@/components/sections/footer/FooterLogoReveal";
|
||||||
import { Crown, Phone, Sparkles } from "lucide-react";
|
import { Crown, Phone, Sparkles, Building2, Users, Award } from "lucide-react";
|
||||||
|
|
||||||
export default function LandingPage() {
|
export default function LandingPage() {
|
||||||
return (
|
return (
|
||||||
@@ -160,9 +160,10 @@ export default function LandingPage() {
|
|||||||
|
|
||||||
<div id="socialproof" data-section="socialproof">
|
<div id="socialproof" data-section="socialproof">
|
||||||
<SocialProofOne
|
<SocialProofOne
|
||||||
title="Trusted by Corporate Leaders"
|
title="Trusted by Corporate Leaders & Professionals"
|
||||||
description="Chosen by professionals and businesses across India for premium tailored suits."
|
description="Chosen by professionals, businesses, and corporate partners across India for premium tailored suits and exceptional service."
|
||||||
tag="Partners"
|
tag="Corporate Partners"
|
||||||
|
tagIcon={Building2}
|
||||||
textboxLayout="default"
|
textboxLayout="default"
|
||||||
useInvertedBackground={true}
|
useInvertedBackground={true}
|
||||||
names={[
|
names={[
|
||||||
@@ -175,22 +176,23 @@ export default function LandingPage() {
|
|||||||
<div id="faq" data-section="faq">
|
<div id="faq" data-section="faq">
|
||||||
<FaqBase
|
<FaqBase
|
||||||
title="Frequently Asked Questions"
|
title="Frequently Asked Questions"
|
||||||
description="Everything you need to know about our tailored suits and services."
|
description="Everything you need to know about our tailored suits, services, and ordering process. Contact us at +91 9007961006 for detailed consultations."
|
||||||
tag="Help & Support"
|
tag="Help & Support"
|
||||||
|
tagIcon={Award}
|
||||||
textboxLayout="default"
|
textboxLayout="default"
|
||||||
useInvertedBackground={false}
|
useInvertedBackground={false}
|
||||||
faqsAnimation="slide-up"
|
faqsAnimation="slide-up"
|
||||||
faqs={[
|
faqs={[
|
||||||
{
|
{
|
||||||
id: "1", title: "What is the delivery timeline for a custom suit?", content: "Our standard tailoring takes 7-14 days. Premium custom suits may take 14-21 days. Express options available for urgent orders. All suits are delivered to your doorstep with tracking."},
|
id: "1", title: "What is the delivery timeline for a custom suit?", content: "Our standard tailoring takes 7-14 days. Premium custom suits may take 14-21 days. Express options available for urgent orders. All suits are delivered to your doorstep with tracking. Call us at +91 9007961006 to arrange delivery."},
|
||||||
{
|
{
|
||||||
id: "2", title: "Can I get alterations after receiving my suit?", content: "Absolutely! We offer free alterations for our Classic Fit (1 month), included alterations for Premium Cut (3 months), and lifetime alterations for Luxury Custom plans. Contact us for post-delivery adjustments."},
|
id: "2", title: "Can I get alterations after receiving my suit?", content: "Absolutely! We offer free alterations for our Classic Fit (1 month), included alterations for Premium Cut (3 months), and lifetime alterations for Luxury Custom plans. Contact us at +91 9007961006 for post-delivery adjustments."},
|
||||||
{
|
{
|
||||||
id: "3", title: "What fabrics do you use?", content: "We use premium cotton blends for classic suits, Italian wool for premium collections, and exclusive designer fabrics for luxury custom orders. All fabrics are sourced from certified suppliers ensuring quality and durability."},
|
id: "3", title: "What fabrics do you use?", content: "We use premium cotton blends for classic suits, Italian wool for premium collections, and exclusive designer fabrics for luxury custom orders. All fabrics are sourced from certified suppliers ensuring quality and durability."},
|
||||||
{
|
{
|
||||||
id: "4", title: "How do I place an order?", content: "You can call us at +91 9007961006 to discuss your requirements, browse our catalog, and place an order. We also accept inquiries via email or direct WhatsApp messages for personalized consultation."},
|
id: "4", title: "How do I place an order?", content: "You can call us at +91 9007961006 to discuss your requirements, browse our catalog, and place an order. We also accept inquiries via email or direct WhatsApp messages for personalized consultation and styling advice."},
|
||||||
{
|
{
|
||||||
id: "5", title: "What is your return/refund policy?", content: "We offer 30-90 day replacement guarantees depending on your plan. If the suit doesn't meet your expectations, we offer free alterations or replacement. Full refund available for manufacturing defects."},
|
id: "5", title: "What is your return/refund policy?", content: "We offer 30-90 day replacement guarantees depending on your plan. If the suit doesn't meet your expectations, we offer free alterations or replacement. Full refund available for manufacturing defects. Contact +91 9007961006 for details."},
|
||||||
{
|
{
|
||||||
id: "6", title: "Do you offer bulk orders for corporate events?", content: "Yes! We specialize in bulk corporate orders. Contact us at +91 9007961006 for special corporate discounts and customized solutions for your organization or event."},
|
id: "6", title: "Do you offer bulk orders for corporate events?", content: "Yes! We specialize in bulk corporate orders. Contact us at +91 9007961006 for special corporate discounts and customized solutions for your organization or event."},
|
||||||
]}
|
]}
|
||||||
@@ -202,7 +204,7 @@ export default function LandingPage() {
|
|||||||
tag="Get in Touch"
|
tag="Get in Touch"
|
||||||
tagIcon={Phone}
|
tagIcon={Phone}
|
||||||
title="Ready for Your Perfect Suit?"
|
title="Ready for Your Perfect Suit?"
|
||||||
description="Contact Home Boutique today for premium tailored suits and personalized styling consultation. Our team is ready to help you look your best."
|
description="Contact Home Boutique today for premium tailored suits and personalized styling consultation. Call +91 9007961006 or reach out via WhatsApp. Our team is ready to help you look your best."
|
||||||
buttons={[
|
buttons={[
|
||||||
{ text: "Call Now: +91 9007961006", href: "tel:+919007961006" },
|
{ text: "Call Now: +91 9007961006", href: "tel:+919007961006" },
|
||||||
{ text: "Browse Catalog", href: "#products" },
|
{ text: "Browse Catalog", href: "#products" },
|
||||||
|
|||||||
Reference in New Issue
Block a user