Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 547d289a9a | |||
| 0e4e649dfd | |||
| a0d1d28395 | |||
| d0b09d2087 |
291
src/app/page.tsx
291
src/app/page.tsx
@@ -4,7 +4,7 @@ import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||
import ReactLenis from "lenis/react";
|
||||
import AboutMetric from '@/components/sections/about/AboutMetric';
|
||||
import ContactSplitForm from '@/components/sections/contact/ContactSplitForm';
|
||||
import FooterBaseReveal from '@/components/sections/footer/FooterBaseReveal';
|
||||
import FooterBaseCard from '@/components/sections/footer/FooterBaseCard';
|
||||
import HeroBillboardTestimonial from '@/components/sections/hero/HeroBillboardTestimonial';
|
||||
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
|
||||
import PricingCardFive from '@/components/sections/pricing/PricingCardFive';
|
||||
@@ -30,21 +30,13 @@ export default function LandingPage() {
|
||||
<NavbarStyleCentered
|
||||
navItems={[
|
||||
{
|
||||
name: "О нас",
|
||||
id: "about",
|
||||
},
|
||||
name: "О нас", id: "about"},
|
||||
{
|
||||
name: "Услуги",
|
||||
id: "services",
|
||||
},
|
||||
name: "Услуги", id: "services"},
|
||||
{
|
||||
name: "Отзывы",
|
||||
id: "testimonials",
|
||||
},
|
||||
name: "Отзывы", id: "testimonials"},
|
||||
{
|
||||
name: "Контакты",
|
||||
id: "contact",
|
||||
},
|
||||
name: "Контакты", id: "contact"},
|
||||
]}
|
||||
brandName="ЦАРЬ"
|
||||
/>
|
||||
@@ -54,104 +46,56 @@ export default function LandingPage() {
|
||||
<HeroBillboardTestimonial
|
||||
useInvertedBackground={true}
|
||||
background={{
|
||||
variant: "gradient-bars",
|
||||
}}
|
||||
variant: "gradient-bars"}}
|
||||
title="ЦАРСКИЙ СТИЛЬ В НОВОЧЕРКАССКЕ"
|
||||
description="Больше, чем стрижка. Власть над образом для тех, кто привык быть первым."
|
||||
testimonials={[
|
||||
{
|
||||
name: "Алексей С.",
|
||||
handle: "@alex_novoch",
|
||||
testimonial: "Лучший барбершоп, где я был. Атмосфера настоящего мужского клуба.",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/portrait-pensive-man-with-receive-moustache-beard-trimming-procedure-barbershop_613910-15042.jpg?_wi=1",
|
||||
imageAlt: "barber grooming man dark room",
|
||||
},
|
||||
name: "Алексей С.", handle: "@alex_novoch", testimonial: "Лучший барбершоп, где я был. Атмосфера настоящего мужского клуба.", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/portrait-pensive-man-with-receive-moustache-beard-trimming-procedure-barbershop_613910-15042.jpg?_wi=1", imageAlt: "barber grooming man dark room"},
|
||||
{
|
||||
name: "Дмитрий В.",
|
||||
handle: "@dmitry_v",
|
||||
testimonial: "Мастера — профессионалы. Всё четко, без лишних слов.",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/young-man-sitting-outside-cafe-with-his-bicycle_23-2148176434.jpg?_wi=1",
|
||||
imageAlt: "luxury barbershop interior design",
|
||||
},
|
||||
name: "Дмитрий В.", handle: "@dmitry_v", testimonial: "Мастера — профессионалы. Всё четко, без лишних слов.", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/young-man-sitting-outside-cafe-with-his-bicycle_23-2148176434.jpg?_wi=1", imageAlt: "luxury barbershop interior design"},
|
||||
{
|
||||
name: "Игорь М.",
|
||||
handle: "@igor_m",
|
||||
testimonial: "Прихожу сюда за стилем и отличным сервисом. Рекомендую!",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/barber-wallpaper-black-marble-background_53876-145654.jpg?_wi=1",
|
||||
imageAlt: "barber tools dark background",
|
||||
},
|
||||
name: "Игорь М.", handle: "@igor_m", testimonial: "Прихожу сюда за стилем и отличным сервисом. Рекомендую!", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/barber-wallpaper-black-marble-background_53876-145654.jpg?_wi=1", imageAlt: "barber tools dark background"},
|
||||
{
|
||||
name: "Максим Р.",
|
||||
handle: "@max_r",
|
||||
testimonial: "Четкий контур, отличная работа. Мастер знает свое дело.",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/portrait-pensive-man-with-receive-moustache-beard-trimming-procedure-barbershop_613910-15042.jpg?_wi=2",
|
||||
imageAlt: "barber grooming man dark room",
|
||||
},
|
||||
name: "Максим Р.", handle: "@max_r", testimonial: "Четкий контур, отличная работа. Мастер знает свое дело.", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/portrait-pensive-man-with-receive-moustache-beard-trimming-procedure-barbershop_613910-15042.jpg?_wi=2", imageAlt: "barber grooming man dark room"},
|
||||
{
|
||||
name: "Виктор К.",
|
||||
handle: "@viktor_k",
|
||||
testimonial: "Приятное место, кофе и отличная стрижка. Всё на уровне.",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/young-man-sitting-outside-cafe-with-his-bicycle_23-2148176434.jpg?_wi=2",
|
||||
imageAlt: "luxury barbershop interior design",
|
||||
},
|
||||
name: "Виктор К.", handle: "@viktor_k", testimonial: "Приятное место, кофе и отличная стрижка. Всё на уровне.", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/young-man-sitting-outside-cafe-with-his-bicycle_23-2148176434.jpg?_wi=2", imageAlt: "luxury barbershop interior design"},
|
||||
]}
|
||||
buttons={[
|
||||
{
|
||||
text: "Записаться",
|
||||
href: "#contact",
|
||||
},
|
||||
text: "Записаться", href: "#contact"},
|
||||
]}
|
||||
imageSrc="http://img.b2bpic.net/free-photo/portrait-pensive-man-with-receive-moustache-beard-trimming-procedure-barbershop_613910-15042.jpg?_wi=3"
|
||||
avatars={[
|
||||
{
|
||||
src: "http://img.b2bpic.net/free-photo/portrait-pensive-man-with-receive-moustache-beard-trimming-procedure-barbershop_613910-15042.jpg",
|
||||
alt: "Client 1",
|
||||
},
|
||||
src: "http://img.b2bpic.net/free-photo/portrait-pensive-man-with-receive-moustache-beard-trimming-procedure-barbershop_613910-15042.jpg", alt: "Client 1"},
|
||||
{
|
||||
src: "http://img.b2bpic.net/free-photo/portrait-pensive-man-with-receive-moustache-beard-trimming-procedure-barbershop_613910-15042.jpg",
|
||||
alt: "Client 2",
|
||||
},
|
||||
src: "http://img.b2bpic.net/free-photo/portrait-pensive-man-with-receive-moustache-beard-trimming-procedure-barbershop_613910-15042.jpg", alt: "Client 2"},
|
||||
{
|
||||
src: "http://img.b2bpic.net/free-photo/portrait-pensive-man-with-receive-moustache-beard-trimming-procedure-barbershop_613910-15042.jpg",
|
||||
alt: "Client 3",
|
||||
},
|
||||
src: "http://img.b2bpic.net/free-photo/portrait-pensive-man-with-receive-moustache-beard-trimming-procedure-barbershop_613910-15042.jpg", alt: "Client 3"},
|
||||
{
|
||||
src: "http://img.b2bpic.net/free-photo/portrait-pensive-man-with-receive-moustache-beard-trimming-procedure-barbershop_613910-15042.jpg",
|
||||
alt: "Client 4",
|
||||
},
|
||||
src: "http://img.b2bpic.net/free-photo/portrait-pensive-man-with-receive-moustache-beard-trimming-procedure-barbershop_613910-15042.jpg", alt: "Client 4"},
|
||||
{
|
||||
src: "http://img.b2bpic.net/free-photo/portrait-pensive-man-with-receive-moustache-beard-trimming-procedure-barbershop_613910-15042.jpg",
|
||||
alt: "Client 5",
|
||||
},
|
||||
src: "http://img.b2bpic.net/free-photo/portrait-pensive-man-with-receive-moustache-beard-trimming-procedure-barbershop_613910-15042.jpg", alt: "Client 5"},
|
||||
]}
|
||||
marqueeItems={[
|
||||
{
|
||||
type: "text",
|
||||
text: "ПРИМИУМ УХОД",
|
||||
type: "text", text: "ПРИМИУМ УХОД"},
|
||||
{
|
||||
type: "text-icon", text: "ОПАСНОЕ БРИТЬЕ", icon: Scissors,
|
||||
},
|
||||
{
|
||||
type: "text-icon",
|
||||
text: "ОПАСНОЕ БРИТЬЕ",
|
||||
icon: Scissors,
|
||||
type: "text", text: "СТРИЖКА БОРОДЫ"},
|
||||
{
|
||||
type: "text-icon", text: "КОРОЛЕВСКИЙ СЕРВИС", icon: Crown,
|
||||
},
|
||||
{
|
||||
type: "text",
|
||||
text: "СТРИЖКА БОРОДЫ",
|
||||
},
|
||||
{
|
||||
type: "text-icon",
|
||||
text: "КОРОЛЕВСКИЙ СЕРВИС",
|
||||
icon: Crown,
|
||||
},
|
||||
{
|
||||
type: "text",
|
||||
text: "ИНДИВИДУАЛЬНЫЙ СТИЛЬ",
|
||||
},
|
||||
type: "text", text: "ИНДИВИДУАЛЬНЫЙ СТИЛЬ"},
|
||||
]}
|
||||
/>
|
||||
</div>
|
||||
@@ -163,19 +107,13 @@ export default function LandingPage() {
|
||||
metrics={[
|
||||
{
|
||||
icon: Star,
|
||||
label: "Рейтинг",
|
||||
value: "4.4",
|
||||
},
|
||||
label: "Рейтинг", value: "4.4"},
|
||||
{
|
||||
icon: MessageSquare,
|
||||
label: "Отзывов",
|
||||
value: "96",
|
||||
},
|
||||
label: "Отзывов", value: "96"},
|
||||
{
|
||||
icon: Clock,
|
||||
label: "Атмосфера",
|
||||
value: "Премиум",
|
||||
},
|
||||
label: "Атмосфера", value: "Премиум"},
|
||||
]}
|
||||
metricsAnimation="blur-reveal"
|
||||
/>
|
||||
@@ -188,53 +126,22 @@ export default function LandingPage() {
|
||||
useInvertedBackground={true}
|
||||
plans={[
|
||||
{
|
||||
id: "cut",
|
||||
tag: "Базовый",
|
||||
price: "1200₽",
|
||||
period: "стрижка",
|
||||
description: "Стрижка с учетом особенностей волос и формы лица.",
|
||||
button: {
|
||||
text: "Записаться",
|
||||
},
|
||||
featuresTitle: "Что входит:",
|
||||
features: [
|
||||
"Консультация",
|
||||
"Мытье головы",
|
||||
"Стрижка",
|
||||
"Укладка",
|
||||
],
|
||||
id: "cut", tag: "Базовый", price: "1200₽", period: "стрижка", description: "Стрижка с учетом особенностей волос и формы лица.", button: {
|
||||
text: "Записаться"},
|
||||
featuresTitle: "Что входит:", features: [
|
||||
"Консультация", "Мытье головы", "Стрижка", "Укладка"],
|
||||
},
|
||||
{
|
||||
id: "beard",
|
||||
tag: "Уход",
|
||||
price: "800₽",
|
||||
period: "борода",
|
||||
description: "Моделирование бороды и усов с использованием косметики.",
|
||||
button: {
|
||||
text: "Записаться",
|
||||
},
|
||||
featuresTitle: "Что входит:",
|
||||
features: [
|
||||
"Коррекция формы",
|
||||
"Тримминг",
|
||||
"Уход маслами",
|
||||
],
|
||||
id: "beard", tag: "Уход", price: "800₽", period: "борода", description: "Моделирование бороды и усов с использованием косметики.", button: {
|
||||
text: "Записаться"},
|
||||
featuresTitle: "Что входит:", features: [
|
||||
"Коррекция формы", "Тримминг", "Уход маслами"],
|
||||
},
|
||||
{
|
||||
id: "shave",
|
||||
tag: "Премиум",
|
||||
price: "1500₽",
|
||||
period: "бритье",
|
||||
description: "Классическое королевское бритье опасной бритвой.",
|
||||
button: {
|
||||
text: "Записаться",
|
||||
},
|
||||
featuresTitle: "Что входит:",
|
||||
features: [
|
||||
"Распаривание",
|
||||
"Бритье",
|
||||
"Холодный компресс",
|
||||
],
|
||||
id: "shave", tag: "Премиум", price: "1500₽", period: "бритье", description: "Классическое королевское бритье опасной бритвой.", button: {
|
||||
text: "Записаться"},
|
||||
featuresTitle: "Что входит:", features: [
|
||||
"Распаривание", "Бритье", "Холодный компресс"],
|
||||
},
|
||||
]}
|
||||
title="Услуги и цены"
|
||||
@@ -249,64 +156,28 @@ export default function LandingPage() {
|
||||
useInvertedBackground={false}
|
||||
testimonials={[
|
||||
{
|
||||
id: "1",
|
||||
name: "Иван С.",
|
||||
role: "Бизнесмен",
|
||||
company: "Локальный бренд",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/barber-wallpaper-black-marble-background_53876-145654.jpg?_wi=2",
|
||||
imageAlt: "barber tools dark background",
|
||||
},
|
||||
id: "1", name: "Иван С.", role: "Бизнесмен", company: "Локальный бренд", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/barber-wallpaper-black-marble-background_53876-145654.jpg?_wi=2", imageAlt: "barber tools dark background"},
|
||||
{
|
||||
id: "2",
|
||||
name: "Николай П.",
|
||||
role: "Дизайнер",
|
||||
company: "Creative Lab",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/portrait-pensive-man-with-receive-moustache-beard-trimming-procedure-barbershop_613910-15042.jpg?_wi=4",
|
||||
imageAlt: "barber grooming man dark room",
|
||||
},
|
||||
id: "2", name: "Николай П.", role: "Дизайнер", company: "Creative Lab", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/portrait-pensive-man-with-receive-moustache-beard-trimming-procedure-barbershop_613910-15042.jpg?_wi=4", imageAlt: "barber grooming man dark room"},
|
||||
{
|
||||
id: "3",
|
||||
name: "Сергей Л.",
|
||||
role: "IT-специалист",
|
||||
company: "TechStream",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/young-man-sitting-outside-cafe-with-his-bicycle_23-2148176434.jpg?_wi=3",
|
||||
imageAlt: "luxury barbershop interior design",
|
||||
},
|
||||
id: "3", name: "Сергей Л.", role: "IT-специалист", company: "TechStream", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/young-man-sitting-outside-cafe-with-his-bicycle_23-2148176434.jpg?_wi=3", imageAlt: "luxury barbershop interior design"},
|
||||
{
|
||||
id: "4",
|
||||
name: "Алексей М.",
|
||||
role: "Предприниматель",
|
||||
company: "NovochMarket",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/barber-wallpaper-black-marble-background_53876-145654.jpg?_wi=3",
|
||||
imageAlt: "barber tools dark background",
|
||||
},
|
||||
id: "4", name: "Алексей М.", role: "Предприниматель", company: "NovochMarket", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/barber-wallpaper-black-marble-background_53876-145654.jpg?_wi=3", imageAlt: "barber tools dark background"},
|
||||
{
|
||||
id: "5",
|
||||
name: "Артем К.",
|
||||
role: "Спортсмен",
|
||||
company: "Fitness Center",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/portrait-pensive-man-with-receive-moustache-beard-trimming-procedure-barbershop_613910-15042.jpg?_wi=5",
|
||||
imageAlt: "barber grooming man dark room",
|
||||
},
|
||||
id: "5", name: "Артем К.", role: "Спортсмен", company: "Fitness Center", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/portrait-pensive-man-with-receive-moustache-beard-trimming-procedure-barbershop_613910-15042.jpg?_wi=5", imageAlt: "barber grooming man dark room"},
|
||||
]}
|
||||
kpiItems={[
|
||||
{
|
||||
value: "96+",
|
||||
label: "довольных клиентов",
|
||||
},
|
||||
value: "96+", label: "довольных клиентов"},
|
||||
{
|
||||
value: "4.4",
|
||||
label: "средний рейтинг",
|
||||
},
|
||||
value: "4.4", label: "средний рейтинг"},
|
||||
{
|
||||
value: "100%",
|
||||
label: "качества",
|
||||
},
|
||||
value: "100%", label: "качества"},
|
||||
]}
|
||||
title="Отзывы клиентов"
|
||||
description="Нам доверяют свой стиль."
|
||||
@@ -320,22 +191,14 @@ export default function LandingPage() {
|
||||
description="Московская ул., 61. Закрываемся в 21:00. В пятницу — аншлаг, бронируйте заранее."
|
||||
inputs={[
|
||||
{
|
||||
name: "name",
|
||||
type: "text",
|
||||
placeholder: "Ваше имя",
|
||||
required: true,
|
||||
name: "name", type: "text", placeholder: "Ваше имя", required: true,
|
||||
},
|
||||
{
|
||||
name: "phone",
|
||||
type: "tel",
|
||||
placeholder: "Телефон: +7 988 994-80-80",
|
||||
required: true,
|
||||
name: "phone", type: "tel", placeholder: "Телефон: +7 988 994-80-80", required: true,
|
||||
},
|
||||
]}
|
||||
textarea={{
|
||||
name: "service",
|
||||
placeholder: "Желаемая услуга / Время",
|
||||
rows: 3,
|
||||
name: "service", placeholder: "Желаемая услуга / Время", rows: 3,
|
||||
}}
|
||||
imageSrc="http://img.b2bpic.net/free-photo/barber-wallpaper-black-marble-background_53876-145654.jpg?_wi=4"
|
||||
mediaAnimation="slide-up"
|
||||
@@ -343,41 +206,29 @@ export default function LandingPage() {
|
||||
</div>
|
||||
|
||||
<div id="footer" data-section="footer">
|
||||
<FooterBaseReveal
|
||||
<FooterBaseCard
|
||||
logoText="ЦАРЬ"
|
||||
columns={[
|
||||
{
|
||||
title: "Локация",
|
||||
items: [
|
||||
title: "Локация", items: [
|
||||
{
|
||||
label: "Московская ул., 61, Новочеркасск",
|
||||
href: "#contact",
|
||||
},
|
||||
label: "Московская ул., 61, Новочеркасск", href: "#contact"},
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Связь",
|
||||
items: [
|
||||
title: "Связь", items: [
|
||||
{
|
||||
label: "+7 988 994-80-80",
|
||||
href: "tel:+79889948080",
|
||||
},
|
||||
label: "+7 988 994-80-80", href: "tel:+79889948080"},
|
||||
{
|
||||
label: "arn.su",
|
||||
href: "http://arn.su",
|
||||
},
|
||||
label: "arn.su", href: "http://arn.su"},
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "График",
|
||||
items: [
|
||||
title: "График", items: [
|
||||
{
|
||||
label: "Ежедневно до 21:00",
|
||||
href: "#",
|
||||
},
|
||||
label: "Ежедневно до 21:00", href: "#"},
|
||||
{
|
||||
label: "Пик: Пятница",
|
||||
href: "#",
|
||||
},
|
||||
label: "Пик: Пятница", href: "#"},
|
||||
],
|
||||
},
|
||||
]}
|
||||
@@ -387,4 +238,4 @@ export default function LandingPage() {
|
||||
</ReactLenis>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -13,11 +13,11 @@
|
||||
--background: #0a0a0a;
|
||||
--card: #171717;
|
||||
--foreground: #ffffff;
|
||||
--primary-cta: #d4af37;
|
||||
--primary-cta: #ff0000;
|
||||
--primary-cta-text: #000000;
|
||||
--secondary-cta: #1f1f1f;
|
||||
--secondary-cta-text: #ffffff;
|
||||
--accent: #d4af37;
|
||||
--accent: #ff0000;
|
||||
--background-accent: #262626;
|
||||
|
||||
/* text sizing - set by ThemeProvider */
|
||||
|
||||
Reference in New Issue
Block a user