import type { Metadata } from "next";
import type { ReactNode } from "react";
import "./globals.css";
import Header from "@/components/header";
import Footer from "@/components/footer";
import WhatsAppFloat from "@/components/whatsapp-float";
import { CartProvider } from "@/components/cart-context";
import { SITE } from "@/lib/site";

export const metadata: Metadata = {
  metadataBase: new URL(SITE.domain),
  title: {
    default: "Capita Consultants | UAE & UK Business Setup Consultancy",
    template: "%s | Capita Consultants",
  },
  description:
    "Professional company formation, business licensing, residency, banking and corporate consultancy solutions across the UAE and UK.",
  openGraph: {
    type: "website",
    siteName: "Capita Consultants",
    url: SITE.domain,
    title: "Capita Consultants | UAE & UK Business Setup Consultancy",
    description:
      "Company formation, licensing, residency, banking and corporate compliance consultancy across the UAE and UK.",
  },
  twitter: { card: "summary_large_image" },
};

export default function RootLayout({ children }: { children: ReactNode }) {
  return (
    <html lang="en">
      <body className="antialiased">
        <CartProvider>
          <Header />
          <main>{children}</main>
          <Footer />
          <WhatsAppFloat />
        </CartProvider>
      </body>
    </html>
  );
}
