From 7353d5e3766c95b349b665c63bca1d5d48431b7e Mon Sep 17 00:00:00 2001 From: bender Date: Fri, 6 Mar 2026 16:01:56 +0000 Subject: [PATCH 1/2] Update src/app/layout.tsx --- src/app/layout.tsx | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/app/layout.tsx b/src/app/layout.tsx index 1561cdc..7326eb5 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -15,22 +15,24 @@ const inter = Inter({ }); export const metadata: Metadata = { - title: "House of London Hair Salon | Premium Beauty Services", description: "Luxury hair salon offering professional cuts, coloring, and beauty treatments. Expert stylists dedicated to enhancing your natural beauty.", keywords: "hair salon, professional haircut, hair color, beauty services, London salon, luxury hair care", metadataBase: new URL("https://houseoflondon.com"), + title: "House of London Hair Salon | Premium Beauty Services in Toronto", description: "Located at 3350 Lake Shore Blvd W, Toronto, ON M8W 1N3. Premium hair salon offering professional cuts, coloring, and beauty treatments. Open until 6 p.m. Expert stylists dedicated to enhancing your natural beauty. Call (416) 251-0621.", keywords: "hair salon, professional haircut, hair color, beauty services, Toronto salon, luxury hair care", metadataBase: new URL("https://houseoflondon.com"), alternates: { - canonical: "https://houseoflondon.com"}, + canonical: "https://houseoflondon.com" + }, openGraph: { - title: "House of London Hair Salon", description: "Transform your look at London's premier hair salon with luxury services and expert stylists.", url: "https://houseoflondon.com", siteName: "House of London", type: "website", images: [ + title: "House of London Hair Salon", description: "Transform your look at Toronto's premier hair salon with luxury services and expert stylists. Located at 3350 Lake Shore Blvd W. Call (416) 251-0621.", url: "https://houseoflondon.com", siteName: "House of London", type: "website", images: [ { - url: "http://img.b2bpic.net/free-photo/make-up-artist-getting-model-ready-photoshootin_23-2149305127.jpg", alt: "House of London luxury salon"}, - ], + url: "http://img.b2bpic.net/free-photo/make-up-artist-getting-model-ready-photoshootin_23-2149305127.jpg", alt: "House of London luxury salon" + } + ] }, twitter: { - card: "summary_large_image", title: "House of London Hair Salon", description: "Premium hair and beauty services in London", images: ["http://img.b2bpic.net/free-photo/make-up-artist-getting-model-ready-photoshootin_23-2149305127.jpg"], + card: "summary_large_image", title: "House of London Hair Salon", description: "Premium hair and beauty services in Toronto. Located at 3350 Lake Shore Blvd W. Call (416) 251-0621.", images: ["http://img.b2bpic.net/free-photo/make-up-artist-getting-model-ready-photoshootin_23-2149305127.jpg"] }, robots: { index: true, - follow: true, - }, + follow: true + } }; export default function RootLayout({ From 78442765015331d2c6ce56ea1e6e88189ebffc51 Mon Sep 17 00:00:00 2001 From: bender Date: Fri, 6 Mar 2026 16:01:57 +0000 Subject: [PATCH 2/2] Update src/app/page.tsx --- src/app/page.tsx | 69 ++++++++++++++++++++++++++++++------------------ 1 file changed, 44 insertions(+), 25 deletions(-) diff --git a/src/app/page.tsx b/src/app/page.tsx index c9f724c..cc03a40 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -24,43 +24,61 @@ const navItems = [ const heroTestimonials = [ { name: "Sarah Mitchell", handle: "Regular Client", testimonial: "The best salon experience I've had. The team truly understands what I need.", rating: 5, - imageSrc: "http://img.b2bpic.net/free-photo/expressive-happy-young-female-youngster-has-curly-afro-hairstyle-listens-music-earphones_273609-8864.jpg?_wi=1"}, + imageSrc: "http://img.b2bpic.net/free-photo/expressive-happy-young-female-youngster-has-curly-afro-hairstyle-listens-music-earphones_273609-8864.jpg?_wi=1" + }, { name: "Emma Thompson", handle: "Bridal Client", testimonial: "My wedding day hair was absolutely perfect. Highly recommended!", rating: 5, - imageSrc: "http://img.b2bpic.net/free-photo/portrait-successful-grey-haired-female-ceo-smiling-content-experienced-beautiful-businesswoman-posing-office-room-business-company-appearance-expression-concept_74855-11905.jpg?_wi=1"}, + imageSrc: "http://img.b2bpic.net/free-photo/portrait-successful-grey-haired-female-ceo-smiling-content-experienced-beautiful-businesswoman-posing-office-room-business-company-appearance-expression-concept_74855-11905.jpg?_wi=1" + }, { name: "James Wilson", handle: "Groom", testimonial: "Professional service from start to finish. Great attention to detail.", rating: 5, - imageSrc: "http://img.b2bpic.net/free-photo/blond-businessman-happy-expression_1194-3634.jpg?_wi=1"}, + imageSrc: "http://img.b2bpic.net/free-photo/blond-businessman-happy-expression_1194-3634.jpg?_wi=1" + }, ]; const testimonials = [ { - id: "1", name: "Victoria Chen", role: "Regular Client", testimonial: "Absolutely fantastic! My hair has never looked better. The team is so welcoming and professional. I've been coming here for 3 years.", imageSrc: "http://img.b2bpic.net/free-photo/expressive-happy-young-female-youngster-has-curly-afro-hairstyle-listens-music-earphones_273609-8864.jpg?_wi=2"}, + id: "1", name: "Victoria Chen", role: "Regular Client", testimonial: "Absolutely fantastic! My hair has never looked better. The team is so welcoming and professional. I've been coming here for 3 years.", imageSrc: "http://img.b2bpic.net/free-photo/expressive-happy-young-female-youngster-has-curly-afro-hairstyle-listens-music-earphones_273609-8864.jpg?_wi=2" + }, { - id: "2", name: "Jessica Martinez", role: "Bridal Client", testimonial: "My wedding day hair was perfection! The stylist listened to exactly what I wanted and made it even better. Thank you!", imageSrc: "http://img.b2bpic.net/free-photo/portrait-successful-grey-haired-female-ceo-smiling-content-experienced-beautiful-businesswoman-posing-office-room-business-company-appearance-expression-concept_74855-11905.jpg?_wi=2"}, + id: "2", name: "Jessica Martinez", role: "Bridal Client", testimonial: "My wedding day hair was perfection! The stylist listened to exactly what I wanted and made it even better. Thank you!", imageSrc: "http://img.b2bpic.net/free-photo/portrait-successful-grey-haired-female-ceo-smiling-content-experienced-beautiful-businesswoman-posing-office-room-business-company-appearance-expression-concept_74855-11905.jpg?_wi=2" + }, { - id: "3", name: "David Thompson", role: "Corporate Client", testimonial: "Professional, reliable, and always delivers. I trust them with my look for important business events.", imageSrc: "http://img.b2bpic.net/free-photo/blond-businessman-happy-expression_1194-3634.jpg?_wi=2"}, + id: "3", name: "David Thompson", role: "Corporate Client", testimonial: "Professional, reliable, and always delivers. I trust them with my look for important business events.", imageSrc: "http://img.b2bpic.net/free-photo/blond-businessman-happy-expression_1194-3634.jpg?_wi=2" + }, { - id: "4", name: "Amanda Foster", role: "Color Transformation", testimonial: "I was nervous about my hair transformation, but the colorist was so knowledgeable and supportive. I love the new me!", imageSrc: "http://img.b2bpic.net/free-photo/indoor-shot-lovely-young-female-model-with-blond-hair-dressed-sleepwear-sitting-bed-with-wonderful-smile_291650-1060.jpg"}, + id: "4", name: "Amanda Foster", role: "Color Transformation", testimonial: "I was nervous about my hair transformation, but the colorist was so knowledgeable and supportive. I love the new me!", imageSrc: "http://img.b2bpic.net/free-photo/indoor-shot-lovely-young-female-model-with-blond-hair-dressed-sleepwear-sitting-bed-with-wonderful-smile_291650-1060.jpg" + }, { - id: "5", name: "Rachel Lee", role: "Regular Visitor", testimonial: "The salon atmosphere is so relaxing and elegant. Every visit feels like a special treat. Highly recommend!", imageSrc: "http://img.b2bpic.net/free-photo/serious-beautiful-middle-aged-business-woman_1262-3072.jpg"}, + id: "5", name: "Rachel Lee", role: "Regular Visitor", testimonial: "The salon atmosphere is so relaxing and elegant. Every visit feels like a special treat. Highly recommend!", imageSrc: "http://img.b2bpic.net/free-photo/serious-beautiful-middle-aged-business-woman_1262-3072.jpg" + }, { - id: "6", name: "Michael Garcia", role: "Loyalty Member", testimonial: "Outstanding service every time. The team remembers my preferences and always goes the extra mile. Best salon in the area!", imageSrc: "http://img.b2bpic.net/free-photo/close-up-portrait-handsome-middle-aged-man-with-beard-hairstyle-dressed-elegant-formal-suit-textured-dark-background-studio_613910-19909.jpg"}, + id: "6", name: "Michael Garcia", role: "Loyalty Member", testimonial: "Outstanding service every time. The team remembers my preferences and always goes the extra mile. Best salon in the area!", imageSrc: "http://img.b2bpic.net/free-photo/close-up-portrait-handsome-middle-aged-man-with-beard-hairstyle-dressed-elegant-formal-suit-textured-dark-background-studio_613910-19909.jpg" + }, ]; const faqItems = [ { - id: "1", title: "How do I book an appointment?", content: "You can book an appointment through our contact form, call us directly at our salon, or message us on our social media. We offer flexible scheduling to fit your busy lifestyle."}, + id: "1", title: "How do I book an appointment?", content: "You can book an appointment through our contact form, call us directly at (416) 251-0621, or message us on our social media. We offer flexible scheduling to fit your busy lifestyle." + }, { - id: "2", title: "What is your cancellation policy?", content: "We require 24 hours notice for cancellations or rescheduling. Cancellations made with less notice may be subject to a 50% booking fee."}, + id: "2", title: "What is your cancellation policy?", content: "We require 24 hours notice for cancellations or rescheduling. Cancellations made with less notice may be subject to a 50% booking fee." + }, { - id: "3", title: "Do you offer color treatments?", content: "Yes, we offer full color services, highlights, balayage, and color corrections. Our colorists use premium products to ensure vibrant, long-lasting results."}, + id: "3", title: "Do you offer color treatments?", content: "Yes, we offer full color services, highlights, balayage, and color corrections. Our colorists use premium products to ensure vibrant, long-lasting results." + }, { - id: "4", title: "How often should I get a haircut?", content: "We recommend getting a haircut every 4-6 weeks to maintain your style. For color treatments, touch-ups are typically needed every 4-8 weeks depending on your hair growth."}, + id: "4", title: "How often should I get a haircut?", content: "We recommend getting a haircut every 4-6 weeks to maintain your style. For color treatments, touch-ups are typically needed every 4-8 weeks depending on your hair growth." + }, { - id: "5", title: "Do you use organic or natural products?", content: "We use professional-grade products from trusted brands. Many of our treatments include options for organic and natural product lines. Please mention any preferences during your booking."}, + id: "5", title: "Do you use organic or natural products?", content: "We use professional-grade products from trusted brands. Many of our treatments include options for organic and natural product lines. Please mention any preferences during your booking." + }, { - id: "6", title: "Are first-time clients welcome?", content: "Absolutely! We love welcoming new clients. We recommend arriving 10-15 minutes early for your first appointment to complete our client information form."}, + id: "6", title: "Are first-time clients welcome?", content: "Absolutely! We love welcoming new clients. We recommend arriving 10-15 minutes early for your first appointment to complete our client information form." + }, + { + id: "7", title: "What are your salon hours?", content: "We are open Monday to Saturday, with hours extending until 6 p.m. on weekdays. Sundays are by appointment only. Visit us at 3350 Lake Shore Blvd W, Toronto, ON M8W 1N3." + }, ]; export default function LandingPage() { @@ -82,14 +100,15 @@ export default function LandingPage() { brandName="House of London" navItems={navItems} button={{ - text: "Book Now", href: "#contact"}} + text: "Book Now", href: "#contact" + }} />