Merge version_2 into main #4
@@ -1,53 +1,20 @@
|
||||
import type { Metadata } from "next";
|
||||
import { Manrope } from "next/font/google";
|
||||
import { DM_Sans } from "next/font/google";
|
||||
import { Inter } from "next/font/google";
|
||||
import "./globals.css";
|
||||
import { ServiceWrapper } from "@/components/ServiceWrapper";
|
||||
import Tag from "@/tag/Tag";
|
||||
|
||||
const manrope = Manrope({
|
||||
variable: "--font-manrope", subsets: ["latin"],
|
||||
});
|
||||
|
||||
const dmSans = DM_Sans({
|
||||
variable: "--font-dm-sans", subsets: ["latin"],
|
||||
});
|
||||
const inter = Inter({ subsets: ["latin"] });
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: "Professional Local Services | ProServe - Fast & Reliable", description: "Trusted local service provider with 15+ years of experience. Licensed, insured, same-day response. Plumbing, electrical, HVAC, and more. Get your free quote today.", keywords: "local services, plumbing, electrical, HVAC, home repair, licensed contractor, trusted service provider", metadataBase: new URL("https://www.proserve.local"),
|
||||
alternates: {
|
||||
canonical: "https://www.proserve.local"
|
||||
},
|
||||
openGraph: {
|
||||
title: "ProServe - Your Local Service Expert", description: "Trusted professional services with transparent pricing and 24/7 availability", url: "https://www.proserve.local", siteName: "ProServe", type: "website", images: [
|
||||
{
|
||||
url: "http://img.b2bpic.net/free-photo/business-team-office_1098-746.jpg", alt: "ProServe professional service team"
|
||||
}
|
||||
]
|
||||
},
|
||||
twitter: {
|
||||
card: "summary_large_image", title: "ProServe - Trusted Local Services", description: "Fast, reliable, and affordable solutions for your home", images: ["http://img.b2bpic.net/free-photo/business-team-office_1098-746.jpg"]
|
||||
},
|
||||
robots: {
|
||||
index: true,
|
||||
follow: true
|
||||
}
|
||||
};
|
||||
title: "ProServe - Professional Local Services", description: "Fast, reliable, and affordable home services. Licensed & insured with same-day response times."};
|
||||
|
||||
export default function RootLayout({
|
||||
children,
|
||||
}: Readonly<{
|
||||
}: {
|
||||
children: React.ReactNode;
|
||||
}>) {
|
||||
}) {
|
||||
return (
|
||||
<html lang="en" suppressHydrationWarning>
|
||||
<ServiceWrapper>
|
||||
<body
|
||||
className={`${manrope.variable} ${dmSans.variable} antialiased`}
|
||||
>
|
||||
<Tag />
|
||||
{children}
|
||||
|
||||
<html lang="en">
|
||||
<body className={inter.className}>{children}
|
||||
<script
|
||||
dangerouslySetInnerHTML={{
|
||||
__html: `
|
||||
@@ -1415,7 +1382,6 @@ export default function RootLayout({
|
||||
}}
|
||||
/>
|
||||
</body>
|
||||
</ServiceWrapper>
|
||||
</html>
|
||||
);
|
||||
}
|
||||
|
||||
@@ -198,7 +198,7 @@ export default function LandingPage() {
|
||||
<div id="contact" data-section="contact">
|
||||
<ContactSplit
|
||||
tag="Ready to Get Started?"
|
||||
title="Get Your Free Quote Today"
|
||||
title="Free Quote in 2 Hours or Less"
|
||||
description="Contact us for immediate assistance. We respond within 2 hours and provide transparent pricing with no hidden fees."
|
||||
tagIcon={Phone}
|
||||
tagAnimation="slide-up"
|
||||
@@ -210,7 +210,7 @@ export default function LandingPage() {
|
||||
mediaPosition="right"
|
||||
inputPlaceholder="Enter your email address"
|
||||
buttonText="Schedule Service"
|
||||
termsText="We'll respond within 2 hours. Your information is secure and never shared."
|
||||
termsText="2-hour response guarantee. Your information is secure and never shared. We'll get back to you fast with a transparent quote."
|
||||
/>
|
||||
</div>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user