diff --git a/src/assets/emoji/belarus.png b/src/assets/emoji/belarus.png
new file mode 100644
index 0000000..56c5e90
Binary files /dev/null and b/src/assets/emoji/belarus.png differ
diff --git a/src/assets/emoji/russia.png b/src/assets/emoji/russia.png
new file mode 100644
index 0000000..79c2f29
Binary files /dev/null and b/src/assets/emoji/russia.png differ
diff --git a/src/components/Divider.tsx b/src/components/Divider.tsx
new file mode 100644
index 0000000..512e68d
--- /dev/null
+++ b/src/components/Divider.tsx
@@ -0,0 +1,28 @@
+import { Box } from "@mui/material";
+import React from "react";
+import { useResponsive } from "../theme/useResponsive";
+
+function Divider() {
+ const { isMobile } = useResponsive();
+ return (
+
+
+
+ );
+};
+
+export default Divider;
+
+
diff --git a/src/pages/CalculatorPage.tsx b/src/pages/CalculatorPage.tsx
new file mode 100644
index 0000000..39439df
--- /dev/null
+++ b/src/pages/CalculatorPage.tsx
@@ -0,0 +1,770 @@
+import React, { useState } from "react";
+import {
+ Box,
+ Typography,
+ TextField,
+ Button,
+ FormControl,
+ Select,
+ MenuItem,
+ FormControlLabel,
+ Radio,
+ InputAdornment,
+} from "@mui/material";
+import { useResponsive } from "../theme/useResponsive";
+import russia from "../assets/emoji/russia.png";
+import belarus from "../assets/emoji/belarus.png";
+
+function CalculatorPage() {
+ const { isMobile } = useResponsive();
+
+ // Состояния для полей формы
+ const [country, setCountry] = useState("russia"); // russia или belarus
+ const [age, setAge] = useState("Новые, не менее 3-х лет");
+ const [price, setPrice] = useState("");
+ const [currency, setCurrency] = useState("USD Доллар США");
+ const [engineType, setEngineType] = useState("Бензиновый");
+ const [hybridType, setHybridType] = useState("Не гибрид");
+ const [engineVolume, setEngineVolume] = useState("");
+ const [enginePower, setEnginePower] = useState("");
+ const [enginePowerUnit, setEnginePowerUnit] = useState("л.с.");
+ const [electricMotorPower, setElectricMotorPower] = useState("");
+ const [electricMotorPowerUnit, setElectricMotorPowerUnit] = useState("л.с.");
+ const [powerRatio, setPowerRatio] = useState("ДВС > ЭД");
+ const [calculationType, setCalculationType] = useState("Физ. лица");
+ const [enhancedPermeability, setEnhancedPermeability] = useState(false);
+
+ const handleCalculate = () => {
+ // Здесь будет логика расчета
+ console.log({
+ country,
+ age,
+ price,
+ currency,
+ engineType,
+ hybridType,
+ engineVolume,
+ enginePower,
+ enginePowerUnit,
+ electricMotorPower,
+ electricMotorPowerUnit,
+ powerRatio,
+ calculationType,
+ enhancedPermeability,
+ });
+ };
+
+ return (
+
+
+ {/* Левая часть - форма */}
+
+ {/* Первая линия */}
+
+
+ Рассчитать для
+
+
+ setCountry("russia")}
+ sx={{ cursor: "pointer", position: "relative" }}
+ >
+
+
+
+ setCountry("belarus")}
+ sx={{ cursor: "pointer", position: "relative" }}
+ >
+
+
+
+
+
+
+ {/* Вторая линия */}
+
+
+ Возраст
+
+ {/* setAge(e.target.value)}
+ variant="outlined"
+ placeholder="Новые, не менее 3-х лет"
+ sx={{
+ "& .MuiOutlinedInput-root": {
+ borderRadius: "25px",
+ bgcolor: "white",
+ height: "40px",
+ }
+ }}
+ /> */}
+
+
+
+ {/* Третья линия */}
+
+ setPrice(e.target.value)}
+ variant="outlined"
+ InputProps={{
+ endAdornment: ₽,
+ }}
+ sx={{
+ "& .MuiOutlinedInput-root": {
+ borderRadius: "2vw",
+ bgcolor: "white",
+ height: "3.5vw",
+ width: "83%",
+ border: "0.1vw solid #C27664",
+ fontFamily: "Unbounded",
+ fontSize: "1.5vw",
+ color: "#C27664",
+ "& fieldset": {
+ border: "none"
+ },
+ }
+ }}
+ />
+
+
+
+ {/*
+
+ */}
+
+
+ {/* Четвертая линия - Валюта */}
+ {/*
+
+
+
+ */}
+
+ {/* Пятая линия */}
+
+
+ Двигатель
+
+
+
+
+
+
+ {/* Шестая линия */}
+
+
+ Тип гибрида
+
+
+
+
+
+
+ {/* Седьмая линия */}
+
+ setEngineVolume(e.target.value)}
+ variant="outlined"
+ sx={{
+ "& .MuiOutlinedInput-root": {
+ borderRadius: "2vw",
+ bgcolor: "white",
+ height: "3.5vw",
+ width: "67%",
+ border: "0.1vw solid #C27664",
+ fontFamily: "Unbounded",
+ fontSize: "1.4vw",
+ color: "#C27664",
+ "& fieldset": {
+ border: "none"
+ },
+ }
+ }}
+ />
+
+ см³
+
+
+
+ {/* Восьмая линия */}
+
+ setEnginePower(e.target.value)}
+ variant="outlined"
+ sx={{
+ "& .MuiOutlinedInput-root": {
+ borderRadius: "2vw",
+ bgcolor: "white",
+ height: "3.5vw",
+ width: "98%",
+ border: "0.1vw solid #C27664",
+ fontFamily: "Unbounded",
+ fontSize: "1.4vw",
+ color: "#C27664",
+ "& fieldset": {
+ border: "none"
+ },
+ }
+ }}
+ />
+
+ setEnginePowerUnit("л.с.")}
+ sx={{
+ color: "#C27664",
+ "&.Mui-checked": { color: "#C27664" },
+ "& .MuiSvgIcon-root": {
+ fontSize: "1.5vw"
+ }
+ }}
+ />
+ }
+ label="л.с."
+ sx={{
+ "& .MuiFormControlLabel-label": {
+ fontSize: "2vw",
+ fontFamily: "Unbounded",
+ color: "#C27664",
+ }
+ }}
+ />
+ setEnginePowerUnit("кВт")}
+ sx={{
+ color: "#C27664",
+ "&.Mui-checked": { color: "#C27664" },
+ "& .MuiSvgIcon-root": {
+ fontSize: "1.5vw"
+ }
+ }}
+ />
+ }
+ label="кВт"
+ sx={{
+ "& .MuiFormControlLabel-label": {
+ fontSize: "2vw",
+ fontFamily: "Unbounded",
+ color: "#C27664",
+ }
+ }}
+ />
+
+
+
+ {/* Девятая линия */}
+
+ setElectricMotorPower(e.target.value)}
+ variant="outlined"
+ sx={{
+ "& .MuiOutlinedInput-root": {
+ borderRadius: "2vw",
+ bgcolor: "white",
+ height: "3.5vw",
+ width: "112%",
+ border: "0.1vw solid #C27664",
+ fontFamily: "Unbounded",
+ fontSize: "1.32vw",
+ color: "#C27664",
+ "& fieldset": {
+ border: "none"
+ },
+ }
+ }}
+ />
+
+ setElectricMotorPowerUnit("л.с.")}
+ sx={{
+ color: "#C27664",
+ "&.Mui-checked": { color: "#C27664" },
+ "& .MuiSvgIcon-root": {
+ fontSize: "1.5vw"
+ }
+ }}
+ />
+ }
+ label="л.с."
+ sx={{
+ "& .MuiFormControlLabel-label": {
+ fontSize: "2vw",
+ fontFamily: "Unbounded",
+ color: "#C27664",
+ }
+ }}
+ />
+ setElectricMotorPowerUnit("кВт")}
+ sx={{
+ color: "#C27664",
+ "&.Mui-checked": { color: "#C27664" },
+ "& .MuiSvgIcon-root": {
+ fontSize: "1.5vw"
+ }
+ }}
+ />
+ }
+ label="кВт"
+ sx={{
+ "& .MuiFormControlLabel-label": {
+ fontSize: "2vw",
+ fontFamily: "Unbounded",
+ color: "#C27664",
+ }
+ }}
+ />
+
+
+
+ {/* Десятая линия */}
+
+
+ ДВС vs ЭД
+
+
+ ЭД"}
+ onChange={() => setPowerRatio("ДВС > ЭД")}
+ sx={{
+ color: "#C27664",
+ "&.Mui-checked": { color: "#C27664" },
+ }}
+ />
+ }
+ label="ДВС > ЭД"
+ sx={{
+ "& .MuiFormControlLabel-label": {
+ fontSize: "1.7vw",
+ fontFamily: "Unbounded",
+ color: "#C27664",
+ }
+ }}
+ />
+ setPowerRatio("ДВС < ЭД")}
+ sx={{
+ color: "#C27664",
+ "&.Mui-checked": { color: "#C27664" },
+ }}
+ />
+ }
+ label="ДВС < ЭД"
+ sx={{
+ "& .MuiFormControlLabel-label": {
+ fontSize: "1.7vw",
+ fontFamily: "Unbounded",
+ color: "#C27664",
+ }
+ }}
+ />
+
+
+
+ {/* Одиннадцатая линия */}
+
+
+ Расчет при ввозе
+
+
+
+
+
+
+ {/* Двенадцатая линия */}
+
+ setEnhancedPermeability(!enhancedPermeability)}
+ sx={{
+ color: "#C27664",
+ "&.Mui-checked": { color: "#C27664" },
+ }}
+ />
+ }
+ label="Повышенной проходимости"
+ sx={{
+ "& .MuiFormControlLabel-label": {
+ fontSize: "2vw",
+ color: "#C27664",
+ fontFamily: "Unbounded",
+ }
+ }}
+ />
+
+
+ {/* Тринадцатая линия */}
+
+
+
+ {/* Правая часть - описание */}
+
+
+ РАСЧИТАЙТЕ СТОИМОСТЬ ДОСТАВКИ!
+
+
+
+ С помощью калькулятора таможенных платежей за автомобиль
+
+
+
+
+ Обсуждаем ваш запрос и бюджет, подбираем варианты. Заключаем договор и вносим аванс (100 000 P, возвращается, если не подберем авто).
+
+
+ Выкупаем авто
+
+
+ Оформляем документы и доставляем авто в РФ. На всех этапах машина застрахована.
+
+
+ Проходим таможню, делаем документы для регистрации.
+
+
+ Передаём авто вам - с актом и финальной оплатой.
+
+
+
+
+
+ );
+}
+
+export default CalculatorPage;
diff --git a/src/pages/DeliveryPage.tsx b/src/pages/DeliveryPage.tsx
index c816157..4bde7b2 100644
--- a/src/pages/DeliveryPage.tsx
+++ b/src/pages/DeliveryPage.tsx
@@ -44,42 +44,44 @@ function DeliveryPage() {
component="h1"
sx={{
fontFamily: "Unbounded",
- fontSize: isMobile ? "10vw" : "4vw",
+ fontSize: isMobile ? "6vw" : "4vw",
fontWeight: "bold",
marginBottom: "1vw",
- maxWidth: "50vw",
+ maxWidth: isMobile ? "auto" :"50vw",
}}
>
Мы доставляем автомобили из{" "}
США, Китая и Кореи
-
+
@@ -102,10 +104,10 @@ function DeliveryPage() {
component="h2"
sx={{
fontFamily: "Unbounded",
- fontSize: "1.5vw",
+ fontSize: isMobile ? "4vw" : "1.5vw",
fontWeight: "light",
color: "#C27664",
- ml: "2.5vw",
+ ml: isMobile ? "4.5vw" : "2.5vw",
maxWidth: "60%",
}}
>
@@ -115,18 +117,18 @@ function DeliveryPage() {
onClick={handleOpenFeedback}
sx={{
fontFamily: "Unbounded",
- fontSize: "1.5vw",
+ fontSize: isMobile ? "3vw" : "1.5vw",
color: "white",
bgcolor: "#C27664",
- borderRadius: "3vw",
+ borderRadius: isMobile ? "5vw" : "3vw",
maxWidth: "60%",
cursor: "pointer",
left: "50%",
- top: "70%",
+ top: isMobile ? "75%" : "70%",
position: "absolute",
transform: "translateX(-50%)",
- padding: "1vw 3vw 1vw 3vw",
- width: "18vw",
+ padding: isMobile ? "2vw 6vw 2vw 6vw" : "1vw 3vw 1vw 3vw",
+ width: isMobile ? "50vw" : "18vw",
textAlign: "center",
"&:hover": {
bgcolor: "#945B4D",
diff --git a/src/pages/MainPage.tsx b/src/pages/MainPage.tsx
index 6e92c68..7b39d18 100644
--- a/src/pages/MainPage.tsx
+++ b/src/pages/MainPage.tsx
@@ -4,13 +4,15 @@ import Feedback from "../components/Feedback";
import car from "../../src/assets/icon/car.png";
import { useResponsive } from "../theme/useResponsive";
import TelegramIcon from "@mui/icons-material/Telegram";
-import VkIcon from "@mui/icons-material/Facebook";
+import { FaVk } from "react-icons/fa";
import WhatsAppIcon from "@mui/icons-material/WhatsApp";
import { scrollToAnchor } from "../utils/scrollUtils";
import AboutUsPage from "./AboutUsPage";
import StagesPage from "./StagesPage";
import CarsPage from "./CarsPage";
import DeliveryPage from "./DeliveryPage";
+import Divider from "../components/Divider";
+import CalculatorPage from "./CalculatorPage";
function MainPage() {
const [feedbackOpen, setFeedbackOpen] = useState(false);
@@ -181,7 +183,7 @@ function MainPage() {
"&:hover": { color: "#945B4D", borderColor: "#945B4D" },
}}
>
-
+
+
+
+
+
+
);
}
diff --git a/src/pages/StagesPage.tsx b/src/pages/StagesPage.tsx
index 988eac1..64145ed 100644
--- a/src/pages/StagesPage.tsx
+++ b/src/pages/StagesPage.tsx
@@ -85,7 +85,6 @@ function StagesPage() {
padding: isMobile ? "10vw 5vw" : "5vw",
minHeight: "100vh",
scrollMarginTop: isMobile ? "15vw" : "10vw",
- position: "relative", // Добавляем позиционирование для родителя
}}
>