8 Commits

Author SHA1 Message Date
42e4327e0a Update src/app/page.tsx 2026-03-03 10:37:38 +00:00
0d6ccf5355 Update src/app/layout.tsx 2026-03-03 10:37:37 +00:00
b75712ff79 Merge version_2 into main
Merge version_2 into main
2026-03-03 10:30:17 +00:00
25e0fa19c8 Update src/app/styles/variables.css 2026-03-03 10:30:11 +00:00
1f2ed61e60 Update src/app/styles/base.css 2026-03-03 10:30:10 +00:00
b7357ae3c6 Update src/app/page.tsx 2026-03-03 10:30:09 +00:00
44c8a7a6d8 Update src/app/layout.tsx 2026-03-03 10:30:08 +00:00
386a9e3cf1 Merge version_1 into main
Merge version_1 into main
2026-03-03 09:19:36 +00:00
4 changed files with 30 additions and 69 deletions

View File

@@ -1,29 +1,20 @@
import type { Metadata } from "next"; import type { Metadata } from "next";
import { Halant } from "next/font/google"; import { Poppins } from "next/font/google";
import { Inter } from "next/font/google";
import { Open_Sans } from "next/font/google";
import "./globals.css"; import "./globals.css";
import { ServiceWrapper } from "@/components/ServiceWrapper"; import { ServiceWrapper } from "@/components/ServiceWrapper";
import Tag from "@/tag/Tag"; import Tag from "@/tag/Tag";
const halant = Halant({ const poppins = Poppins({
variable: "--font-halant", subsets: ["latin"], variable: "--font-poppins", subsets: ["latin"],
weight: ["300", "400", "500", "600", "700"], weight: ["100", "200", "300", "400", "500", "600", "700", "800", "900"],
});
const inter = Inter({
variable: "--font-inter", subsets: ["latin"],
});
const openSans = Open_Sans({
variable: "--font-open-sans", subsets: ["latin"],
}); });
export const metadata: Metadata = { export const metadata: Metadata = {
title: "MONA PILATES STUDIO | Студія пілатесу на реформерах в Одесі", description: "Камерна студія пілатесу для жінок в Одесі. Реформер пілатес, індивідуальний підхід, преміум обладнання. Запишіться на тренування сьогодні.", keywords: "пілатес, реформер, студія пілатесу, фітнес Одеса, женский фитнес, турбота про тіло", openGraph: { title: "MONA PILATES STUDIO | Студія пілатесу на реформерах в Одесі", description: "Камерна студія пілатесу для жінок в Одесі. Реформер пілатес, індивідуальний підхід, преміум обладнання. Запишіться на тренування сьогодні.", keywords: "пілатес, реформер, студія пілатесу, фітнес Одеса, женский фитнес, турбота про тіло", openGraph: {
title: "MONA PILATES STUDIO | Реформер Пілатес в Одесі", description: "Простір жіночої сили, балансу та турботи про себе. Записуйтеся на тренування на реформерах.", siteName: "MONA PILATES STUDIO", type: "website", images: [ title: "MONA PILATES STUDIO | Реформер Пілатес в Одесі", description: "Простір жіночої сили, балансу та турботи про себе. Записуйтеся на тренування на реформерах.", siteName: "MONA PILATES STUDIO", type: "website", images: [
{ {
url: "http://img.b2bpic.net/free-photo/woman-with-trainer-practising-yoga_1303-14852.jpg", alt: "MONA PILATES STUDIO"}, url: "http://img.b2bpic.net/free-photo/woman-with-trainer-practising-yoga_1303-14852.jpg", alt: "MONA PILATES STUDIO"
},
], ],
}, },
twitter: { twitter: {
@@ -41,11 +32,9 @@ export default function RootLayout({
children: React.ReactNode; children: React.ReactNode;
}>) { }>) {
return ( return (
<html lang="en" suppressHydrationWarning> <html lang="uk" suppressHydrationWarning>
<ServiceWrapper> <ServiceWrapper>
<body <body className={`${poppins.variable} antialiased`}>
className={`${inter.variable} ${openSans.variable} antialiased`}
>
<Tag /> <Tag />
{children} {children}

View File

@@ -5,7 +5,6 @@ import HeroSplitDoubleCarousel from '@/components/sections/hero/HeroSplitDoubleC
import MediaAbout from '@/components/sections/about/MediaAbout'; import MediaAbout from '@/components/sections/about/MediaAbout';
import FeatureCardSix from '@/components/sections/feature/FeatureCardSix'; import FeatureCardSix from '@/components/sections/feature/FeatureCardSix';
import TestimonialCardThirteen from '@/components/sections/testimonial/TestimonialCardThirteen'; import TestimonialCardThirteen from '@/components/sections/testimonial/TestimonialCardThirteen';
import ContactCenter from '@/components/sections/contact/ContactCenter';
import FooterCard from '@/components/sections/footer/FooterCard'; import FooterCard from '@/components/sections/footer/FooterCard';
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider"; import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import { Instagram, Phone, Sparkles } from "lucide-react"; import { Instagram, Phone, Sparkles } from "lucide-react";
@@ -15,12 +14,12 @@ export default function LandingPage() {
<ThemeProvider <ThemeProvider
defaultButtonVariant="text-stagger" defaultButtonVariant="text-stagger"
defaultTextAnimation="reveal-blur" defaultTextAnimation="reveal-blur"
borderRadius="rounded" borderRadius="soft"
contentWidth="small" contentWidth="compact"
sizing="largeSmallSizeLargeTitles" sizing="mediumSizeLargeTitles"
background="blurBottom" background="none"
cardStyle="subtle-shadow" cardStyle="subtle-shadow"
primaryButtonStyle="diagonal-gradient" primaryButtonStyle="flat"
secondaryButtonStyle="solid" secondaryButtonStyle="solid"
headingFontWeight="normal" headingFontWeight="normal"
> >
@@ -31,7 +30,6 @@ export default function LandingPage() {
{ name: "Про студію", id: "about" }, { name: "Про студію", id: "about" },
{ name: "Чому ми", id: "why-us" }, { name: "Чому ми", id: "why-us" },
{ name: "Відгуки", id: "testimonials" }, { name: "Відгуки", id: "testimonials" },
{ name: "Локація", id: "location" },
{ name: "Контакти", id: "contact" } { name: "Контакти", id: "contact" }
]} ]}
/> />
@@ -46,7 +44,7 @@ export default function LandingPage() {
tagAnimation="slide-up" tagAnimation="slide-up"
buttons={[ buttons={[
{ text: "Записатися на тренування", href: "contact" }, { text: "Записатися на тренування", href: "contact" },
{ text: "Проложити маршрут", href: "location" } { text: "Проложити маршрут", href: "https://maps.google.com" }
]} ]}
buttonAnimation="slide-up" buttonAnimation="slide-up"
leftCarouselItems={[ leftCarouselItems={[
@@ -135,33 +133,7 @@ export default function LandingPage() {
/> />
</div> </div>
<div id="location" data-section="location">
<ContactCenter
tag="Локація"
title="Ми знаходимося в Одесі"
description="вулиця Академіка Філатова, 2, секція 2\nОдеса, Одеська область, 65000\n\nЗручне розташування у центральній частині міста з легким доступом та парковкою."
background={{ variant: "plain" }}
useInvertedBackground={false}
inputPlaceholder="Ваша адреса"
buttonText="Проложити маршрут"
termsText="Клацніть на кнопку, щоб отримати маршрут на Google Maps."
/>
</div>
<div id="contact" data-section="contact"> <div id="contact" data-section="contact">
<ContactCenter
tag="Запишіться зараз"
title="Запішіться на тренування"
description="Подаруйте собі годину турботи та сили. Наші тренери чекають на вас!"
background={{ variant: "sparkles-gradient" }}
useInvertedBackground={false}
inputPlaceholder="Ваше ім'я"
buttonText="Записатися"
termsText="Ми зв'яжемося з вами впродовж 24 годин для підтвердження бронювання."
/>
</div>
<div id="footer" data-section="footer">
<FooterCard <FooterCard
logoText="MONA PILATES STUDIO" logoText="MONA PILATES STUDIO"
copyrightText="© 2026 MONA PILATES STUDIO | Pilates Reformer Studio | Odessa" copyrightText="© 2026 MONA PILATES STUDIO | Pilates Reformer Studio | Odessa"

View File

@@ -11,7 +11,7 @@ html {
body { body {
background-color: var(--background); background-color: var(--background);
color: var(--foreground); color: var(--foreground);
font-family: var(--font-open-sans), sans-serif; font-family: var(--font-poppins), sans-serif;
position: relative; position: relative;
min-height: 100vh; min-height: 100vh;
overscroll-behavior: none; overscroll-behavior: none;
@@ -24,5 +24,5 @@ h3,
h4, h4,
h5, h5,
h6 { h6 {
font-family: var(--font-inter), sans-serif; font-family: var(--font-poppins), sans-serif;
} }

View File

@@ -2,23 +2,23 @@
/* Base units */ /* Base units */
/* --vw is set by ThemeProvider */ /* --vw is set by ThemeProvider */
/* --background: #f7f6f7;; /* --background: #faf8f5;;
--card: #ffffff;; --card: #fdfcfb;;
--foreground: #1b0c25;; --foreground: #3d2f2a;;
--primary-cta: #1b0c25;; --primary-cta: #8b7355;;
--secondary-cta: #ffffff;; --secondary-cta: #e8dfd5;;
--accent: #ff93e4;; --accent: #d4c4b0;;
--background-accent: #e8a8c3;; */ --background-accent: #c9b8a3;; */
--background: #f7f6f7;; --background: #faf8f5;;
--card: #ffffff;; --card: #fdfcfb;;
--foreground: #1b0c25;; --foreground: #3d2f2a;;
--primary-cta: #1b0c25;; --primary-cta: #8b7355;;
--primary-cta-text: #f7f6f7;; --primary-cta-text: #f7f6f7;;
--secondary-cta: #ffffff;; --secondary-cta: #e8dfd5;;
--secondary-cta-text: #1b0c25;; --secondary-cta-text: #1b0c25;;
--accent: #ff93e4;; --accent: #d4c4b0;;
--background-accent: #e8a8c3;; --background-accent: #c9b8a3;;
/* text sizing - set by ThemeProvider */ /* text sizing - set by ThemeProvider */
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem); /* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);