import React, { useEffect, useMemo, useState } from "react"; import { BrowserRouter, Routes, Route, Link, NavLink as RRNavLink } from "react-router-dom"; import { motion } from "framer-motion"; import { ArrowRight, Check, Mail, MapPin, Menu, Phone, Star, Sun, Moon, Factory, Scissors, Shirt, Image, Sparkles, Needle, } from "lucide-react"; import { Button } from "@/components/ui/button"; import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"; import { Input } from "@/components/ui/input"; import { Textarea } from "@/components/ui/textarea"; // === Базовые настройки бренда (меняйте под себя) === const BRAND = { name: "ООО «PROUniform»", tagline: "Униформа и мерч с вашим логотипом", phone: "+7 (999) 123-45-67", email: "sales@prouniform.ru", address: "Москва, ул. Производственная, 1", primary: "from-indigo-600 to-blue-600", }; // === Утилиты === const Container = ({ children, className = "" }) => (
{children}
); const PageHeader = ({ icon: Icon, title, subtitle }) => (
{Icon && }{BRAND.name}

{title}

{subtitle &&

{subtitle}

}
); const Stat = ({ value, label }) => (
{value}
{label}
); const Feature = ({ icon: Icon, title, desc }) => (

{title}

{desc}

); const fadeInUp = { hidden: { opacity: 0, y: 16 }, show: { opacity: 1, y: 0, transition: { duration: 0.5 } }, }; // === Навигация === const NavLink = ({ to, children }) => ( `text-sm font-medium px-3 py-2 rounded-xl transition ${ isActive ? "bg-muted text-foreground" : "text-muted-foreground hover:text-foreground" }` } > {children} ); const Header = ({ dark, setDark }) => { const [open, setOpen] = useState(false); return (
{BRAND.name} {BRAND.tagline}
{open && (
О нас Швейное производство DTF UV DTF Вышивка Контакты
)}
); }; const Footer = () => ( ); // === Главная/О нас === const AboutPage = () => { return (

Почему мы

С какие задачами обращаются
Униформа для персонала: футболки, худи, фартуки, куртки
Мерч для конференций, ивентов, промо‑акций
Капсулы одежды под бренд‑гайд
Наклейки UV‑DTF для сложных поверхностей
); }; // === Швейное производство === const SewingPage = () => { const machines = [ { name: "1–/2–игольные промышленные машины", note: "Juki, Jack" }, { name: "Оверлоки/распошивальные", note: "Siruba, Juki" }, { name: "Плоттер раскроя", note: "Лекала по вашим меркам" }, { name: "Термопресс широкоформатный", note: "для термоаппликаций" }, ]; const steps = [ "Бриф и подбор тканей/фурнитуры", "Конструктор, лекала и пилотный образец", "Закупка и раскрой", "Пошив и ОТК", "Брендирование (DTF/вышивка/UV‑DTF)", "Упаковка и логистика", ]; return (
Оборудование {machines.map((m, i) => (
{m.name} — {m.note}
))}
Процесс {steps.map((s, i) => (
{i + 1}
{s}
))}
); }; // === DTF === const DTFPage = () => { const reqs = [ "Формат: PNG/PDF с прозрачным фоном", "Разрешение: 300 dpi", "Профиль цвета: sRGB", "Минимальная линия: 0.3 мм", ]; const benefits = [ "Глянцевый/матовый финиш", "Стойкость к стирке 60°", "Передача мелких деталей", "Подходит для хлопка/полиэстера/смесей", ]; return (
Требования к макетам {reqs.map((r, i) => (
{r}
))}
Плюсы DTF {benefits.map((b, i) => (
{b}
))}
); }; // === UV DTF === const UVDTFPage = () => { const uses = [ "Наклейки для бутылок, термокружек, шейкеров", "Брендинг электроники и сувениров", "Неровные и сложные поверхности", ]; const features = [ "Рельефный эффект, премиальный вид", "Сверхвысокая износостойкость", "Адгезия к стеклу/металлу/пластику", ]; return (
Где применяется {uses.map((u, i) => (
{u}
))}
Особенности UV DTF {features.map((f, i) => (
{f}
))}
); }; // === Вышивка === const EmbroideryPage = () => { const types = [ "Классическая плоская", "Объёмная 3D‑вышивка", "Аппликация/чейн‑стич", "Комбинированная (вышивка + DTF)", ]; const specs = [ "Макс. поле: 360×200 мм", "Игольницы: 12‑15 цветов", "Файлы: DST, EMB (или PNG 300 dpi)", ]; return (
Виды {types.map((t, i) => (
{t}
))}
Характеристики {specs.map((s, i) => (
{s}
))}
); }; // === Контакты === const ContactsPage = () => { return (
Связаться с нами