Merge version_3 into main #3
@@ -1,13 +1,13 @@
|
||||
import type { Metadata } from "next";
|
||||
import { Halant } from "next/font/google";
|
||||
|
||||
import { Inter } from "next/font/google";
|
||||
import "./globals.css";
|
||||
import "@/lib/gsap-setup";
|
||||
import { ServiceWrapper } from "@/components/ServiceWrapper";
|
||||
import Tag from "@/tag/Tag";
|
||||
import { getVisualEditScript } from "@/utils/visual-edit-script";
|
||||
import { Manrope } from "next/font/google";
|
||||
import { DM_Sans } from "next/font/google";
|
||||
|
||||
import { Libre_Baskerville } from "next/font/google";
|
||||
|
||||
|
||||
|
||||
@@ -16,23 +16,15 @@ export const metadata: Metadata = {
|
||||
description: 'Experience premium haircuts, beard trims, and wet shaves at Nordkrone Barbershop. Blending Scandinavian design with timeless grooming artistry in Stockholm.',
|
||||
keywords: ["barbershop, luxury, grooming, haircut, beard trim, wet shave, Stockholm, premium, Scandinavian, style"],
|
||||
openGraph: {
|
||||
"title": "Nordkrone Barbershop | Luxury Grooming & Style",
|
||||
"description": "Experience premium haircuts, beard trims, and wet shaves at Nordkrone Barbershop. Blending Scandinavian design with timeless grooming artistry in Stockholm.",
|
||||
"url": "https://www.nordkrone.com",
|
||||
"siteName": "Nordkrone Barbershop",
|
||||
"images": [
|
||||
"title": "Nordkrone Barbershop | Luxury Grooming & Style", "description": "Experience premium haircuts, beard trims, and wet shaves at Nordkrone Barbershop. Blending Scandinavian design with timeless grooming artistry in Stockholm.", "url": "https://www.nordkrone.com", "siteName": "Nordkrone Barbershop", "images": [
|
||||
{
|
||||
"url": "http://img.b2bpic.net/free-photo/sensual-glamour-portrait-beautiful-woman-model-with-fresh-daily-makeup-with-dark-red-lips-color-clean-healthy-skin-face-studio-lights_158538-14326.jpg",
|
||||
"alt": "Luxurious barbershop interior"
|
||||
"url": "http://img.b2bpic.net/free-photo/sensual-glamour-portrait-beautiful-woman-model-with-fresh-daily-makeup-with-dark-red-lips-color-clean-healthy-skin-face-studio-lights_158538-14326.jpg", "alt": "Luxurious barbershop interior"
|
||||
}
|
||||
],
|
||||
"type": "website"
|
||||
},
|
||||
twitter: {
|
||||
"card": "summary_large_image",
|
||||
"title": "Nordkrone Barbershop | Luxury Grooming & Style",
|
||||
"description": "Experience premium haircuts, beard trims, and wet shaves at Nordkrone Barbershop. Blending Scandinavian design with timeless grooming artistry in Stockholm.",
|
||||
"images": [
|
||||
"card": "summary_large_image", "title": "Nordkrone Barbershop | Luxury Grooming & Style", "description": "Experience premium haircuts, beard trims, and wet shaves at Nordkrone Barbershop. Blending Scandinavian design with timeless grooming artistry in Stockholm.", "images": [
|
||||
"http://img.b2bpic.net/free-photo/sensual-glamour-portrait-beautiful-woman-model-with-fresh-daily-makeup-with-dark-red-lips-color-clean-healthy-skin-face-studio-lights_158538-14326.jpg"
|
||||
]
|
||||
},
|
||||
@@ -42,13 +34,13 @@ export const metadata: Metadata = {
|
||||
},
|
||||
};
|
||||
|
||||
const manrope = Manrope({
|
||||
variable: "--font-manrope",
|
||||
subsets: ["latin"],
|
||||
const libreBaskerville = Libre_Baskerville({
|
||||
variable: "--font-libre-baskerville", subsets: ["latin"],
|
||||
weight: ["400", "700"],
|
||||
});
|
||||
const dmSans = DM_Sans({
|
||||
variable: "--font-dm-sans",
|
||||
subsets: ["latin"],
|
||||
|
||||
const inter = Inter({
|
||||
variable: "--font-inter", subsets: ["latin"],
|
||||
});
|
||||
|
||||
export default function RootLayout({
|
||||
@@ -59,7 +51,7 @@ export default function RootLayout({
|
||||
return (
|
||||
<html lang="en" suppressHydrationWarning>
|
||||
<ServiceWrapper>
|
||||
<body className={`${manrope.variable} ${dmSans.variable} antialiased`}>
|
||||
<body className={`${libreBaskerville.variable} ${inter.variable} antialiased`}>
|
||||
<Tag />
|
||||
{children}
|
||||
<script
|
||||
@@ -71,4 +63,4 @@ export default function RootLayout({
|
||||
</ServiceWrapper>
|
||||
</html>
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||
import ReactLenis from "lenis/react";
|
||||
import ContactCTA from '@/components/sections/contact/ContactCTA';
|
||||
import ContactSplit from '@/components/sections/contact/ContactSplit';
|
||||
import FaqSplitMedia from '@/components/sections/faq/FaqSplitMedia';
|
||||
import FeatureCardSeven from '@/components/sections/feature/FeatureCardSeven';
|
||||
import FooterBase from '@/components/sections/footer/FooterBase';
|
||||
@@ -237,19 +237,20 @@ export default function LandingPage() {
|
||||
</div>
|
||||
|
||||
<div id="contact" data-section="contact">
|
||||
<ContactCTA
|
||||
useInvertedBackground={false}
|
||||
<ContactSplit
|
||||
tag="Book Your Visit"
|
||||
title="Schedule Your Premium Grooming Experience"
|
||||
description="Connect with us for your next premium grooming experience. We look forward to welcoming you!\n\n**Address:** Storgatan 1, 111 45 Stockholm\n**Hours:** Mon-Fri: 9AM-7PM, Sat: 10AM-6PM"
|
||||
background={{
|
||||
variant: "sparkles-gradient"}}
|
||||
tag="Connect with Us"
|
||||
title="Your Next Appointment Awaits"
|
||||
description="Connect with us for your next premium grooming experience. We look forward to welcoming you!\n\n**Address:** Storgatan 1, 111 45 Stockholm\n**Hours:** Mon-Fri: 9AM-7PM, Sat: 10AM-6PM"
|
||||
buttons={[
|
||||
{
|
||||
text: "Call Us: +123 456 7890", href: "tel:+1234567890"},
|
||||
{
|
||||
text: "Get Directions", href: "https://maps.google.com/?q=Nordkrone+Barbershop"},
|
||||
]}
|
||||
useInvertedBackground={false}
|
||||
imageSrc="http://img.b2bpic.net/free-photo/stylish-barbershop-interior-with-vintage-chairs_23-2148496417.jpg"
|
||||
imageAlt="Stylish barbershop interior"
|
||||
mediaAnimation="opacity"
|
||||
mediaPosition="right"
|
||||
inputPlaceholder="Your Name, Email, and Preferred Service"
|
||||
buttonText="Submit Booking Request"
|
||||
onSubmit={(email: string) => console.log('Booking inquiry submitted:', email)}
|
||||
/>
|
||||
</div>
|
||||
|
||||
@@ -298,4 +299,4 @@ export default function LandingPage() {
|
||||
</ReactLenis>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -11,7 +11,7 @@ html {
|
||||
body {
|
||||
background-color: var(--background);
|
||||
color: var(--foreground);
|
||||
font-family: var(--font-dm-sans), sans-serif;
|
||||
font-family: var(--font-var(--font-libre-baskerville), serif), sans-serif;
|
||||
position: relative;
|
||||
min-height: 100vh;
|
||||
overscroll-behavior: none;
|
||||
@@ -24,5 +24,5 @@ h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
font-family: var(--font-manrope), sans-serif;
|
||||
font-family: var(--font-var(--font-libre-baskerville), serif), sans-serif;
|
||||
}
|
||||
|
||||
@@ -10,15 +10,15 @@
|
||||
--accent: #ffffff;
|
||||
--background-accent: #ffffff; */
|
||||
|
||||
--background: #0a0a0a;
|
||||
--card: #1a1a1a;
|
||||
--foreground: #f5f5f5;
|
||||
--primary-cta: #ffdf7d;
|
||||
--primary-cta-text: #0a0a0a;
|
||||
--secondary-cta: #1a1a1a;
|
||||
--secondary-cta-text: #ffffff;
|
||||
--accent: #b8860b;
|
||||
--background-accent: #8b6914;
|
||||
--background: #0D0D0D;
|
||||
--card: #1A1A1A;
|
||||
--foreground: #F0F0F0;
|
||||
--primary-cta: #B49A67;
|
||||
--primary-cta-text: #000000;
|
||||
--secondary-cta: #3A3A3A;
|
||||
--secondary-cta-text: #1a1a1a;
|
||||
--accent: #D4AF37;
|
||||
--background-accent: #242424;
|
||||
|
||||
/* text sizing - set by ThemeProvider */
|
||||
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);
|
||||
|
||||
Reference in New Issue
Block a user