main
Саске Учиха 2 years ago
parent fd21c60372
commit acd5c7e0d9

@ -9,7 +9,11 @@
#### V pre0.1
- Добавлена главная страница (pre0.1_0)
- Добавлена страница "Услуги" (pre0.1_0)
- Добавлена страница "Услуги" (pre0.1_0)
- Адаптирована главная страница (pre0.1_1)
- Добавлена страница "О нас" (pre0.1_1)
- Добавлена страница "Контакты" (pre0.1_1)
- Добавлена страница "Калькулятор" (не функционирует) (pre0.1_1)
#### V 0.0
- Инициализация

38
package-lock.json generated

@ -10,6 +10,7 @@
"@pbe/react-yandex-maps": "^1.2.4",
"@react-icons/all-files": "https://github.com/react-icons/react-icons/releases/download/v4.10.1/react-icons-all-files-4.10.1.tgz",
"autoprefixer": "^10.4.14",
"body-scroll-lock": "^4.0.0-beta.0",
"gatsby": "^5.11.0",
"gatsby-plugin-image": "^3.11.0",
"gatsby-plugin-postcss": "^6.11.0",
@ -21,7 +22,9 @@
"postcss": "^8.4.24",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-range": "^1.8.14",
"react-scroll": "^1.8.9",
"scrolltop": "^0.0.1",
"swiper": "^10.0.3",
"tailwindcss": "^3.3.2",
"uniqid": "^5.4.0"
@ -5122,6 +5125,11 @@
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="
},
"node_modules/body-scroll-lock": {
"version": "4.0.0-beta.0",
"resolved": "https://registry.npmjs.org/body-scroll-lock/-/body-scroll-lock-4.0.0-beta.0.tgz",
"integrity": "sha512-a7tP5+0Mw3YlUJcGAKUqIBkYYGlYxk2fnCasq/FUph1hadxlTRjF+gAcZksxANnaMnALjxEddmSi/H3OR8ugcQ=="
},
"node_modules/boolbase": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
@ -13402,6 +13410,15 @@
"resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
"integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
},
"node_modules/react-range": {
"version": "1.8.14",
"resolved": "https://registry.npmjs.org/react-range/-/react-range-1.8.14.tgz",
"integrity": "sha512-v2nyD5106rHf9dwHzq+WRlhCes83h1wJRHIMFjbZsYYsO6LF4mG/mR3cH7Cf+dkeHq65DItuqIbLn/3jjYjsHg==",
"peerDependencies": {
"react": "^16.8.0-0 || ^17.0.0-0 || ^18.0.0-0",
"react-dom": "^16.8.0-0 || ^17.0.0-0 || ^18.0.0-0"
}
},
"node_modules/react-refresh": {
"version": "0.14.0",
"resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.0.tgz",
@ -13963,6 +13980,11 @@
"url": "https://opencollective.com/webpack"
}
},
"node_modules/scrolltop": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/scrolltop/-/scrolltop-0.0.1.tgz",
"integrity": "sha512-ZMsLfUHXq9kazYWWYuwy+wHS9Rx7YUlONR5yKQh052q2lABHuJwiEk/Qv6ZfuXIX62/euXsbzHWIfOhsGev8uQ=="
},
"node_modules/semver": {
"version": "7.5.1",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.5.1.tgz",
@ -20051,6 +20073,11 @@
}
}
},
"body-scroll-lock": {
"version": "4.0.0-beta.0",
"resolved": "https://registry.npmjs.org/body-scroll-lock/-/body-scroll-lock-4.0.0-beta.0.tgz",
"integrity": "sha512-a7tP5+0Mw3YlUJcGAKUqIBkYYGlYxk2fnCasq/FUph1hadxlTRjF+gAcZksxANnaMnALjxEddmSi/H3OR8ugcQ=="
},
"boolbase": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
@ -26016,6 +26043,12 @@
"resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
"integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
},
"react-range": {
"version": "1.8.14",
"resolved": "https://registry.npmjs.org/react-range/-/react-range-1.8.14.tgz",
"integrity": "sha512-v2nyD5106rHf9dwHzq+WRlhCes83h1wJRHIMFjbZsYYsO6LF4mG/mR3cH7Cf+dkeHq65DItuqIbLn/3jjYjsHg==",
"requires": {}
},
"react-refresh": {
"version": "0.14.0",
"resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.0.tgz",
@ -26430,6 +26463,11 @@
"ajv-keywords": "^3.5.2"
}
},
"scrolltop": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/scrolltop/-/scrolltop-0.0.1.tgz",
"integrity": "sha512-ZMsLfUHXq9kazYWWYuwy+wHS9Rx7YUlONR5yKQh052q2lABHuJwiEk/Qv6ZfuXIX62/euXsbzHWIfOhsGev8uQ=="
},
"semver": {
"version": "7.5.1",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.5.1.tgz",

@ -18,6 +18,7 @@
"@pbe/react-yandex-maps": "^1.2.4",
"@react-icons/all-files": "https://github.com/react-icons/react-icons/releases/download/v4.10.1/react-icons-all-files-4.10.1.tgz",
"autoprefixer": "^10.4.14",
"body-scroll-lock": "^4.0.0-beta.0",
"gatsby": "^5.11.0",
"gatsby-plugin-image": "^3.11.0",
"gatsby-plugin-postcss": "^6.11.0",
@ -29,7 +30,9 @@
"postcss": "^8.4.24",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-range": "^1.8.14",
"react-scroll": "^1.8.9",
"scrolltop": "^0.0.1",
"swiper": "^10.0.3",
"tailwindcss": "^3.3.2",
"uniqid": "^5.4.0"

@ -0,0 +1,28 @@
import React from 'react'
import Title from '../UI/Title';
import Point2 from '../RichText_Points2/Point2';
import DocumentsAdd from '../../icons/DocumentsAdd';
import Shield from '../../icons/Shield';
const Documents = () => {
return (
<section className="py-[90px] max-md:py-9 max-sm:px-3 max-md:px-6 bg-[#F7F7FF]">
<div className="container mx-auto">
<Title titleClass='max-w-[500px]' className='mb-[70px] max-md:mb-8' subtitle='Полезные документы для более полного ознакомления с нашей компанией'>Документы компании</Title>
<div className="flex justify-between items-start max-lg:flex-col">
<div className="flex flex-col basis-1/2 mr-10 max-lg:mr-0">
<Point2 Ico={DocumentsAdd} title='Полис страхования ответственности' text='Наша ответственность перед Вами застрахована в `Альфа Страхование` на 20 000 000 руб.!'/>
<Point2 Ico={Shield} title='Договор публичной оферты' text='Услуги для физических лиц оказываются на основании договора публичной оферты.'/>
</div>
<div className="flex flex-col items-start text-slate-600 leading-normal text-lg max-lg:text-base font-normal basis-1/2 mr-6 max-lg:mr-0">
<p className='mb-7 max-lg:mb-5'>Мы рады предоставить вам доступ к некоторым обязательным к опубликованию и важным документам нашей компании.</p>
<p className='mb-[30px] max-lg:mb-5'>Мы придаем большое значение прозрачности и открытости в своей деятельности, и эти документы помогут вам более полно понять нашу организацию.</p>
<p>Мы надеемся, что эти документы помогут вам получить полное представление о нашей компании и ее ценностях.</p>
</div>
</div>
</div>
</section>
)
}
export default Documents;

@ -0,0 +1,33 @@
import React from 'react'
import { StaticImage } from 'gatsby-plugin-image';
import Title from '../UI/Title';
import Button from '../UI/Button';
const Hero = () => {
return (
<section className={'bg-[#F7F7FF] pt-[70px] max-lg:pt-7 md:h-[1036px] xl:h-[760px] 2xl:h-[890px] max-sm:px-3 max-lg:px-6'}>
<div className="container mx-auto flex flex-col items-center">
<Title className='mb-0 max-md:mb-8 md:max-lg:mb-10' subtitle='Обеспечиваем надежный бизнес' h1>Надежный <span className='text-red-500'>партнер</span></Title>
<div className="flex max-lg:flex-col justify-between items-center max-lg:items-start w-full">
<div className="flex flex-col items-start max-md:mb-10">
<div className="mb-10 max-md:mb-6 max-w-[462px] text-lg max-md:text-base leading-normal">
<h3 className='text-slate-800 font-bold mb-[20px] max-md:mb-3'>Надежность и спокойствие</h3>
<p className='text-slate-600 font-medium'>Наши специалисты гарантируютполный порядок в вашей бухгалтериии качественную поддержку во всехвозникающих вопросах. Простопозвоните нам и мы всерасскажем.</p>
</div>
<div className="mb-10 max-md:mb-6 max-w-[462px] text-lg max-md:text-base leading-normal">
<h3 className='text-slate-800 font-bold mb-[20px] max-md:mb-3'>Ответственность</h3>
<p className='text-slate-600 font-medium'>Наши специалисты гарантируютполный порядок в вашей бухгалтериии качественную поддержку во всехвозникающих вопросах. Простопозвоните нам и мы всерасскажем.</p>
</div>
<Button>Оставить заявку</Button>
</div>
<div className="w-[565px] max-lg:w-[360px] max-2xl:w-[475px] h-auto relative max-lg:self-center">
<div className="bg-red-500 w-[560px] h-[560px] max-2xl:w-[470px] max-2xl:h-[470px] max-lg:w-[300px] max-lg:h-[300px] rounded-full absolute"></div>
<StaticImage src="../../images/woman-account.png" quality='100' alt="hero" placeholder="blurred" className='object-cover w-full h-full rounded-[30px]'/>
</div>
</div>
</div>
</section>
)
}
export default Hero;

@ -0,0 +1,34 @@
import React, { useState } from 'react'
import Title from '../UI/Title';
import RichTextPoints from '../RichText_Points/RichTextPoints';
import Documents from '../../icons/Documents';
import BankTransfer from '../../icons/BankTransfer';
import BankCards from '../../icons/BankCards';
import Coin from '../../icons/Coin';
import Signature from '../../icons/Signature';
import Button from '../UI/Button';
const PhysLic = () => {
const [points] = useState([
{id: 0, title: '3-НДФЛ', to: '/services', ico: <Documents/>, link: true},
{id: 1, title: 'Отчет о движении денежных средств в иностранных банках', to: '/services', ico: <BankTransfer/>, link: true},
{id: 2, title: 'Уведомление о счетах в иностранных банках', to: '/services', ico: <BankCards/>, link: true},
{id: 3, title: 'Контролируемые иностранные компании', to: '/services', ico: <Coin/>, link: true},
{id: 4, title: 'Выпуск электронной цифровой подписи', to: '/services', ico: <Signature/>, link: true},
]);
return (
<section className='py-[90px] max-md:py-9 max-sm:px-3 max-md:px-6 overflow-hidden'>
<div className="container mx-auto">
<Title className='mb-[70px] max-md:mb-8' titleClass="max-w-[280px]">Физическим лицам</Title>
<RichTextPoints points={points} textsize='lg' wrapperClass='md:max-lg:items-start'>
<p className='mb-6 text-slate-800 text-lg max-md:text-base leading-7 max-w-[614px]'>Наши высококвалифицированные специалисты также предлагают полную поддержку физическим лицам в отношении налоговых вопросов. Мы готовы помочь вам не только с подготовкой налоговых деклараций по форме 3-НДФЛ в соответствии с требованиями Налогового кодекса, но и с представлением других отчетов, предусмотренных законодательством Российской Федерации. Благодаря опыту наших специалистов, которые ранее работали в налоговых органах, мы можем предоставить вам качественные консультации и эффективную помощь по всем вопросам, связанным с вашими взаимоотношениями с налоговыми органами. Мы стремимся обеспечить вашу полную уверенность в соблюдении налоговых обязательств и помочь вам достичь оптимальных результатов в сфере налогообложения.</p>
<Button>Калькулятор</Button>
</RichTextPoints>
</div>
</section>
)
}
export default PhysLic;

@ -0,0 +1,26 @@
import React from 'react'
import { StaticImage } from 'gatsby-plugin-image';
import Title from '../UI/Title';
import Button from '../UI/Button';
const RichText = () => {
return (
<section className="py-[90px] max-md:py-9 max-sm:px-3 max-md:px-6 bg-white">
<div className="container mx-auto">
<Title titleClass='max-w-[450px]' className='mb-[70px] max-md:mb-8' subtitle='Мы работаем пока вы отдыхаете'>Профессонализм и ответственность</Title>
<div className="flex justify-between items-center max-lg:items-start max-lg:flex-col">
<div className="w-[670px] max-lg:w-full max-sm:h-[300px] max-md:h-[400px] lg:max-xl:max-w-[550px] max-lg:h-[500px] h-[456px] relative max-lg:order-2">
<StaticImage src="../../images/professionalism.jpg" alt="hero" placeholder="blurred" className='object-cover w-full h-full rounded-[30px]'/>
</div>
<div className="flex flex-col items-start max-w-[520px] lg:max-xl:max-w-[400px] mr-6 max-lg:mr-0 max-lg:mb-14 max-lg:order-1">
<p className='text-slate-600 font-medium text-xl max-lg:text-base leading-normal mb-7 max-lg:mb-5'>Мы практикуем индивидуальный подход к каждому клиенту. Данное правило является основополагающим в нашей работе с заказчиками. Мы полностью вникаем в суть проблем своего клиента, думаем вместе с ним, анализируем особенности его бизнеса.</p>
<p className='text-slate-600 font-medium text-xl max-lg:text-base leading-normal mb-[30px] max-lg:mb-5'>Это позволяет нам понять настоящие причины возникновения сложностей и подыскать оптимальные способы решения</p>
<Button>Оставить заявку</Button>
</div>
</div>
</div>
</section>
)
}
export default RichText;

@ -0,0 +1,14 @@
import React from 'react'
import { GatsbyImage, getImage } from 'gatsby-plugin-image';
const Person = ({name, text, img}) => {
return (
<div className='h-full flex flex-col'>
<GatsbyImage loading='lazy' className='h-[325px] rounded-[20px] w-full object-cover mb-[20px]' image={getImage(img)} alt="logo" placeholder="blurred"/>
<p className='text-slate-800 text-xl font-semibold mb-[15px]'>{name}</p>
<p className='text-slate-800 text-base font-normal leading-normal whitespace-pre-wrap max-w-[261px]'>{text}</p>
</div>
)
}
export default Person;

@ -0,0 +1,79 @@
import React, { useState } from 'react'
import { useStaticQuery, graphql } from "gatsby"
import { Swiper, SwiperSlide } from 'swiper/react';
import 'swiper/css';
import { BsArrowLeft } from "@react-icons/all-files/bs/BsArrowLeft";
import { BsArrowRight } from "@react-icons/all-files/bs/BsArrowRight";
import Person from './Person';
const Team = () => {
const [swiperInstance, setSwiperInstance] = useState();
const images = useStaticQuery(graphql`
query {
person_1: file(relativePath: {eq: "team/1.jpg"}) {
childImageSharp {
gatsbyImageData(formats: WEBP, quality: 90)
}
},
person_2: file(relativePath: {eq: "team/2.jpg"}) {
childImageSharp {
gatsbyImageData(formats: WEBP, quality: 90)
}
},
person_3: file(relativePath: {eq: "team/3.jpg"}) {
childImageSharp {
gatsbyImageData(formats: WEBP, quality: 90)
}
},
person_4: file(relativePath: {eq: "team/4.jpg"}) {
childImageSharp {
gatsbyImageData(formats: WEBP, quality: 90)
}
},
person_5: file(relativePath: {eq: "team/1.jpg"}) {
childImageSharp {
gatsbyImageData(formats: WEBP, quality: 90)
}
},
}`);
const [team] = useState([
{id: 0, name: 'Соломонов Максим', text: 'Генеральный директор.\nСтаж работы в налоговых органах более 7 лет.\nСоветник государственной гражданской службы РФ 3 класса.', img: images.person_1},
{id: 1, name: 'Милюкова Ариадна', text: 'Высококвалифицированный специалист по кадровому учету.\nСоветник юстиции 3 класса.', img: images.person_2},
{id: 2, name: 'Панов Емельян', text: 'Налоговый консультант.\nСтаж работы в сфере налогов более 10 лет.\nСоветник государственной гражданской службы РФ 3 класса.', img: images.person_3},
{id: 3, name: 'Этуша Галина', text: 'Высококвалифицированный специалист по кадровому учету.\nСоветник юстиции 3 класса.', img: images.person_4},
{id: 4, name: 'Соломонов Максим', text: 'Высококвалифицированный специалист по кадровому учету.\nСоветник юстиции 3 класса.', img: images.person_5}
]);
return (
<section className='py-[90px] max-md:py-9 max-sm:px-3 max-md:px-6'>
<div className="container mx-auto">
<div className="flex justify-between max-sm:flex-col max-md:mb-8 items-start w-full">
<h2 className='text-black max-w-[510px] max-md:max-w-none max-md:w-full font-semibold max-md:text-2xl max-xl:text-4xl max-2xl:text-[38px] max-md:mb-5 text-[44px] mb-[70px]'>Наши сотрудники</h2>
<div className="flex">
<button aria-label="Next slide" className='mr-5 max-md:mr-3 w-16 h-16 max-md:w-14 max-md:h-14 border-2 border-slate-600 rounded-full text-[28px] flex justify-center items-center text-slate-600 hover:text-red-500 hover:border-red-500 transition-all' onClick={() => swiperInstance.slidePrev()}><BsArrowLeft/></button>
<button aria-label="Prev slide" className='w-16 h-16 max-md:w-14 max-md:h-14 border-2 border-slate-600 rounded-full text-[28px] flex justify-center items-center text-slate-600 hover:text-red-500 hover:border-red-500 transition-all' onClick={() => swiperInstance.slideNext()}><BsArrowRight/></button>
</div>
</div>
<Swiper spaceBetween={20} slidesPerView={1} onSwiper={(swiper) => setSwiperInstance(swiper)}
breakpoints={{
640: {
slidesPerView: 3,
},
1024: {
slidesPerView: 4,
},
}}>
{team.map(person=>
<SwiperSlide className='!h-auto' key={person.id}>
<Person name={person.name} text={person.text} img={person.img}/>
</SwiperSlide>
)}
</Swiper>
</div>
</section>
)
}
export default Team;

@ -0,0 +1,56 @@
import React, { useState } from 'react'
import Title from '../UI/Title';
import RichTextPoints from '../RichText_Points/RichTextPoints';
import BusinessTime from '../../icons/BusinessTime';
import Accounting from '../../icons/Accounting';
import MoneyCash from '../../icons/MoneyCash';
import SlideRecord from '../../icons/SlideRecord';
import Restore from '../../icons/Restore';
import Coins from '../../icons/Coins';
import DocumentsFill from '../../icons/DocumentsFill';
import ReceiptTax from '../../icons/ReceiptTax';
import MapControl from '../../icons/MapControl';
import FileCheck from '../../icons/FileCheck';
import BillCross from '../../icons/BillCross';
import MoneyHand from '../../icons/MoneyHand';
import Company from '../../icons/Company';
import Internet from '../../icons/Internet';
import DocumentPen from '../../icons/DocumentPen';
import Button from '../UI/Button';
const UrLic = () => {
const [points] = useState([
{id: 0, title: 'Аутсорсинг бухгалтерских услуг', to: '/services', ico: <BusinessTime/>, link: true},
{id: 1, title: 'Бухгалтерское сопровождение бизнеса', to: '/services', ico: <Accounting/>, link: true},
{id: 2, title: 'Бухгалтерский учет для некоммерческих организаций', to: '/services', ico: <MoneyCash/>, link: true},
{id: 3, title: 'Бухгалтерский учет для ИП', to: '/services', ico: <SlideRecord/>, link: true},
{id: 4, title: 'Восстановление бухгалтерского учета', to: '/services', ico: <Restore/>, link: true},
{id: 5, title: 'Расчет заработной платы', to: '/services', ico: <Coins/>, link: true},
{id: 6, title: 'Нулевая отчетность', to: '/services', ico: <DocumentsFill/>, link: true},
{id: 7, title: 'Работа с налоговыми органами', to: '/services', ico: <ReceiptTax/>, link: true},
{id: 8, title: 'Внутренний налоговый контроль', to: '/services', ico: <MapControl/>, link: true},
{id: 9, title: 'Сопровождение проведения налоговой проверки', to: '/services', ico: <FileCheck/>, link: true},
{id: 10, title: 'Списание задолженности по налогам', to: '/services', ico: <BillCross/>, link: true},
{id: 11, title: 'Возмещение НДС из бюджета', to: '/services', ico: <MoneyHand/>, link: true},
{id: 12, title: 'Кадровый учет на предприятии', to: '/services', ico: <Company/>, link: true},
{id: 13, title: 'СБИС — электронная отчетность по интернет', to: '/services', ico: <Internet/>, link: true},
{id: 14, title: 'Регистрация ООО и ИП без визита в инспекцию', to: '/services', ico: <DocumentPen/>, link: true},
]);
return (
<section className='py-[90px] max-md:py-9 max-sm:px-3 max-md:px-6 overflow-hidden'>
<div className="container mx-auto">
<Title className='mb-[70px] max-md:mb-8' titleClass="max-w-[280px]">Юридическим лицам</Title>
<RichTextPoints className='max-w-[465px]' count='4' points={points} textsize='lg' wrapperClass='xl:max-2xl:items-start'>
<p className='mb-6 text-slate-800 text-lg leading-7 max-w-[614px]'>Современная коммерческая деятельность не может обойтись без участия опытного бухгалтера, специалиста по кадрам и налогового консультанта. Они могут помочь избежать проблем с контролирующими органами и оптимально организовать бизнес.</p>
<p className='mb-6 text-slate-800 text-lg leading-7 max-w-[614px]'>Мы практикуем индивидуальный подход к каждому клиенту. Данное правило является основополагающим в нашей работе с заказчиками. Мы полностью вникаем в суть проблем своего клиента, думаем вместе с ним, анализируем особенности его бизнеса.</p>
<p className='mb-6 text-slate-800 text-lg leading-7 max-w-[614px]'>Клиентам наших услуг доступен Личный кабинет заказчика для максимально удобного взаимодействия. А страхование ответственности в ведущих страховых компаниях России распространяется на все оказываемые нами услуги. Все это позволяет предложить нашим клиентам лучшие условия сотрудничества!</p>
<p className='mb-6 text-slate-800 text-lg leading-7 max-w-[614px]'>Кроме того, мы предлагаем страхование ответственности, которое распространяется на все оказываемые нами услуги. Это дополнительная гарантия для наших клиентов, обеспечивающая защиту их интересов в случае возникновения любых непредвиденных ситуаций.</p>
<Button>Калькулятор</Button>
</RichTextPoints>
</div>
</section>
)
}
export default UrLic;

@ -0,0 +1,30 @@
import React from 'react'
import { StaticImage } from 'gatsby-plugin-image';
import Title from '../UI/Title';
import Button from '../UI/Button';
const Workers = () => {
return (
<section className="py-[90px] max-md:py-9 max-sm:px-3 max-md:px-6 bg-[#F7F7FF]">
<div className="container mx-auto">
<Title titleClass='max-w-[500px]' className='mb-[70px] max-md:mb-8' subtitle='Максимизируйте свои налоговые преимущества'>Доверьтесь опытным специалистам</Title>
<div className="flex justify-between items-center max-lg:items-start max-lg:flex-col">
<div className="w-[670px] max-lg:w-full max-sm:h-[300px] max-md:h-[400px] lg:max-xl:max-w-[550px] max-lg:h-[500px] h-[456px] relative max-lg:order-2">
<div className="flex flex-col items-center justify-center text-white w-[190px] max-lg:w-[145px] h-[190px] max-lg:h-[145px] bg-red-500 rounded-full absolute z-10 top-5 right-5 xl:max-2xl:right-9 -translate-y-1/2 xl:translate-x-1/2">
<p className='uppercase text-center text-lg max-lg:text-base font-medium'>Мы знаем более<br/><b className='font-semibold max-lg:text-lg text-[28px]'>1800</b><br/> законов РФ</p>
</div>
<StaticImage src="../../images/campaign-creators.jpg" alt="hero" placeholder="blurred" className='object-cover w-full h-full rounded-[30px]'/>
</div>
<div className="flex flex-col items-start max-w-[520px] lg:max-xl:max-w-[400px] mr-6 max-lg:mr-0 max-lg:mb-14 max-lg:order-1">
<p className='text-slate-600 font-medium text-xl max-lg:text-base leading-normal mb-7 max-lg:mb-5'>Мы практикуем индивидуальный подход к каждому клиенту. Данное правило является основополагающим в нашей работе с заказчиками. Мы полностью вникаем в суть проблем своего клиента, думаем вместе с ним, анализируем особенности его бизнеса.</p>
<p className='text-slate-600 font-medium text-xl max-lg:text-base leading-normal mb-[30px] max-lg:mb-5'>Это позволяет нам понять настоящие причины возникновения сложностей и подыскать оптимальные способы решения</p>
<Button>Оставить заявку</Button>
</div>
</div>
</div>
</section>
)
}
export default Workers;

@ -21,12 +21,12 @@ const Advantages = () => {
{id: 5, title: 'Лучшие специалисты', ico: <TeamFill/>}
]);
return (
<section className='py-[90px]'>
<section className='py-[90px] max-md:py-9 max-sm:px-3 max-md:px-6 overflow-hidden'>
<div className="container mx-auto">
<Title className='mb-[70px]' titleClass="max-w-[588px]" subtitle='Мы являемся лидерами по качеству обслуживания и предлагаем лучшие цены на бухуслуги'>Особые преимущества для вашего финансового роста</Title>
<Title className='mb-[70px] max-md:mb-8' titleClass="max-w-[588px]" subtitle='Мы являемся лидерами по качеству обслуживания и предлагаем лучшие цены на бухуслуги'>Особые преимущества для вашего финансового роста</Title>
<RichTextPoints points={advantages}>
<p className='mb-6 text-slate-800 text-lg leading-7 max-w-[614px]'>Добро пожаловать в нашу бухгалтерскую компанию! Мы - команда опытных профессионалов с 10-летним опытом работы в области бухгалтерии. Наша цель - обеспечить высококачественное бухгалтерское обслуживание, которое поможет вам эффективно управлять финансами своего бизнеса.</p>
<p className='mb-6 text-slate-800 text-lg leading-7 max-w-[614px]'>Наша команда тщательно следит за изменениями в законодательстве и всегда применяет передовые методы и технологии, чтобы обеспечить точность и надежность ведения бухгалтерского учета. Мы понимаем, что каждый бизнес уникален, поэтому мы готовы разработать индивидуальные решения, отвечающие вашим потребностям и целям.</p>
<p className='mb-6 text-slate-800 text-lg max-md:text-base leading-7 max-w-[614px]'>Добро пожаловать в нашу бухгалтерскую компанию! Мы - команда опытных профессионалов с 10-летним опытом работы в области бухгалтерии. Наша цель - обеспечить высококачественное бухгалтерское обслуживание, которое поможет вам эффективно управлять финансами своего бизнеса.</p>
<p className='mb-6 text-slate-800 text-lg max-md:text-base leading-7 max-w-[614px]'>Наша команда тщательно следит за изменениями в законодательстве и всегда применяет передовые методы и технологии, чтобы обеспечить точность и надежность ведения бухгалтерского учета. Мы понимаем, что каждый бизнес уникален, поэтому мы готовы разработать индивидуальные решения, отвечающие вашим потребностям и целям.</p>
<Button>О нас подробнее</Button>
</RichTextPoints>
</div>

@ -0,0 +1,25 @@
import React from 'react'
import CheckBox from '../UI/CheckBox';
const Addictional = () => {
return (
<div className='flex flex-col'>
<div className="flex">
<div className="flex flex-col">
<CheckBox label='Использование льгот / раздельный учет'/>
<CheckBox label='Зарегистрированные обособленные подразделения, филиалы'/>
<CheckBox label='ККМ, эквайринг'/>
<CheckBox label='1С: Комплексная автоматизация'/>
</div>
<div className="flex flex-col">
<CheckBox label='Экспортные / импортные операции / операции с валютой, до 10 операций в месяц'/>
<CheckBox label='Экспортные / импортные операции / операции с валютой, 10-30 операций в месяц'/>
<CheckBox label='Экспортные / импортные операции / операции с валютой, более 30 операций в месяц'/>
<CheckBox label='Договоры комиссии / агентские'/>
</div>
</div>
</div>
)
}
export default Addictional;

@ -0,0 +1,25 @@
import React from 'react'
import Title from '../UI/Title';
import Ranges from './Ranges';
import Output from './Output';
import Addictional from './Addictional';
const Calculator = () => {
return (
<section className={'bg-[#F7F7FF] pt-[70px] max-2xl:pt-10 max-lg:pt-7 md:h-[700px] xl:h-[710px] 2xl:h-[890px] max-sm:px-3 max-lg:px-6'}>
<div className="container h-full mx-auto flex flex-col items-center relative">
<Title className='mb-[70px] max-2xl:mb-12 max-md:mb-4 md:max-lg:mb-8' subtitle='Точно рассчитайте свои затраты без лишних усилий' h1>Калькулятор стоимости <span className='text-red-500'>бухгалтерских услуг</span></Title>
<div className="w-full flex justify-between">
<div className="">
<Ranges></Ranges>
<Addictional></Addictional>
</div>
<Output></Output>
</div>
</div>
</section>
)
}
export default Calculator;

@ -0,0 +1,33 @@
import React, { useState } from 'react'
import { BsQuestionCircle } from "@react-icons/all-files/bs/BsQuestionCircle";
import Radio from '../UI/Radio';
import Button from '../UI/Button';
const Output = () => {
const [tarif, setTarif] = useState('optimal')
const [ip, setIp] = useState('')
return (
<div className="max-w-[384px] w-full">
<div className='flex flex-col p-[30px] w-full bg-white rounded-[20px]'>
<h3 className='text-black font-semibold text-xl mb-[18px] text-center'>Тариф обсулживания</h3>
<p className='flex items-center text-slate-300 font-normal text-base self-center mb-[25px]'><BsQuestionCircle className='mr-2 text-red-500 text-2xl'/>Подробнее о тарифах</p>
<div className="flex flex-col pb-5 ">
<Radio wrapperClasses='mb-3' label='Статус' name='tarif' value='status' onChange={e=> setTarif(e.target.value)} checked={tarif === 'status' ? true : false}/>
<Radio wrapperClasses='mb-3' label='Оптимальный' name='tarif' value='optimal' onChange={e=> setTarif(e.target.value)} checked={tarif === 'optimal' ? true : false}/>
<Radio label='Лайт' name='tarif' value='light' onChange={e=> setTarif(e.target.value)} checked={tarif === 'light' ? true : false}/>
</div>
<div className="flex flex-col border-y-[1px] border-y-slate-300 py-5">
<Radio wrapperClasses='mb-3' label='ИП без работников' name='ip' value='without' onChange={e=> setIp(e.target.value)} checked={ip === 'without' ? true : false}/>
<Radio label='ИП с сотрудниками' name='ip' value='with' onChange={e=> setIp(e.target.value)} checked={ip === 'with' ? true : false}/>
</div>
<div className="flex flex-col items-center pt-5">
<p className='text-black text-xl font-medium mb-[10px]'>Стоимость обслуживания</p>
<output className='text-slate-800 text-[42px] font-semibold mb-3'>29500 </output>
<Button>Оставить заявку</Button>
</div>
</div>
</div>
)
}
export default Output;

@ -0,0 +1,113 @@
import React, { useState } from 'react'
import { Range, getTrackBackground } from 'react-range';
const Ranges = () => {
const [operations, setOperations] = React.useState([1]);
const operationsSettings = {
STEP: 1,
MIN: 1,
MAX: 8
}
const operationsValues = [
{ title: '10'},
{ title: '20'},
{ title: '40'},
{ title: '70'},
{ title: '100'},
{ title: '150'},
{ title: '200'},
{ title: '300'}
]
const [tax, setTax] = useState([1]);
const taxSettings = {
STEP: 1,
MIN: 1,
MAX: 3
}
const taxValues = [
{ title: 'УСН 6%'},
{ title: 'УСН 15%\nЕСХН'},
{ title: 'осн'},
]
const [members, setMembers] = useState([1]);
const membersSettings = {
STEP: 1,
MIN: 1,
MAX: 100
}
return (
<div className='max-w-[920px] w-full'>
<div className="flex flex-col mb-20">
<h2 className='text-black text-[22px] font-medium mb-6'>Система налогооблажения:</h2>
<Range values={tax}
step={taxSettings.STEP}
min={taxSettings.MIN}
max={taxSettings.MAX}
onChange={(values) => setTax(values)}
renderMark={({ props, index }) => (
<div {...props} style={{ ...props.style}} className={[index * taxSettings.STEP < tax[0] ? 'bg-red-600' : 'bg-slate-500', 'mark w-0.5 h-4 rounded-sm translate-y-full'].join(' ')}><span className='whitespace-nowrap absolute top-4 -translate-x-1/2'><b>{taxValues[index]?.title}</b></span></div>
)}
renderTrack={({ props, children }) => (
<div role='presentation' onMouseDown={props.onMouseDown} onTouchStart={props.onTouchStart} style={{...props.style}}>
<div ref={props.ref} style={{background: getTrackBackground({ values: tax, colors: ['#ef4444', '#cbd5e1'], min: taxSettings.MIN, max: taxSettings.MAX,}),}} className='h-[3px] w-full rounded-[30px] [&>.mark:nth-last-child(2)>span]:-translate-x-full [&>.mark:first-child>span]:translate-x-0'>
{children}
</div>
</div>
)}
renderThumb={({ props }) => (
<div {...props} style={{...props.style,}} className='w-7 h-7 rounded-full bg-red-500 hover:bg-red-600 outline-none'></div>
)}
/>
</div>
<div className="flex flex-col mb-20">
<h2 className='text-black text-[22px] font-medium mb-6'>Количество операций:</h2>
<Range values={operations}
step={operationsSettings.STEP}
min={operationsSettings.MIN}
max={operationsSettings.MAX}
onChange={(values) => setOperations(values)}
renderMark={({ props, index }) => (
<div {...props} style={{ ...props.style}} className={[index * operationsSettings.STEP < operations[0] ? 'bg-red-600' : 'bg-slate-500', 'mark w-0.5 h-4 rounded-sm translate-y-full'].join(' ')}><span className='whitespace-nowrap absolute top-4 -translate-x-1/2'>до <b>{operationsValues[index]?.title}</b></span></div>
)}
renderTrack={({ props, children }) => (
<div role='presentation' onMouseDown={props.onMouseDown} onTouchStart={props.onTouchStart}style={{...props.style}}>
<div ref={props.ref} style={{background: getTrackBackground({ values: operations, colors: ['#ef4444', '#cbd5e1'], min: operationsSettings.MIN, max: operationsSettings.MAX,}),}} className='h-[3px] w-full rounded-[30px] [&>.mark:nth-last-child(2)>span]:-translate-x-full [&>.mark:first-child>span]:translate-x-0'>
{children}
</div>
</div>
)}
renderThumb={({ props }) => (
<div {...props} style={{...props.style,}} className='w-7 h-7 rounded-full bg-red-500 hover:bg-red-600 outline-none'></div>
)}
/>
</div>
<div className="flex flex-col mb-20">
<div className="flex justify-between items-center mb-6">
<h2 className='text-black text-[22px] font-medium'>Количество сотрудников:</h2>
<output className='text-black text-[22px] font-medium rounded-[20px] bg-white shadow-sm px-5 py-1'>{members[0]}</output>
</div>
<Range values={members}
step={membersSettings.STEP}
min={membersSettings.MIN}
max={membersSettings.MAX}
onChange={(values) => setMembers(values)}
renderMark={({ props, index }) => (
<div {...props} style={{ ...props.style}} className={[index * membersSettings.STEP < members[0] ? 'bg-red-600' : 'bg-slate-500', [1, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100].includes(index+1) ? '' : 'hidden', 'mark w-0.5 h-4 rounded-sm translate-y-full'].join(' ')}><span className='whitespace-nowrap absolute top-4 -translate-x-1/2'><b>{index+1}</b></span></div>
)}
renderTrack={({ props, children }) => (
<div role='presentation' onMouseDown={props.onMouseDown} onTouchStart={props.onTouchStart}style={{...props.style}}>
<div ref={props.ref} style={{background: getTrackBackground({ values: members, colors: ['#ef4444', '#cbd5e1'], min: membersSettings.MIN, max: membersSettings.MAX,}),}} className='h-[3px] w-full rounded-[30px] [&>.mark:nth-last-child(2)>span]:-translate-x-full [&>.mark:first-child>span]:translate-x-0'>
{children}
</div>
</div>
)}
renderThumb={({ props }) => (
<div {...props} style={{...props.style,}} className='w-7 h-7 rounded-full bg-red-500 hover:bg-red-600 outline-none'></div>
)}
/>
</div>
</div>
)
}
export default Ranges;

@ -8,23 +8,23 @@ import Social from './UI/Social';
const Contacts = () => {
return (
<section className='py-[90px]'>
<div className="container mx-auto border-[1px] border-slate-900 rounded-[20px] flex justify-between overflow-hidden">
<form className="bg-slate-900 p-[60px] w-full max-w-[632px]">
<h2 className='text-white text-[28px] font-medium max-w-[405px] mb-10'>Получите индивидуальные решения для вашего бизнеса</h2>
<section className='py-[90px] max-lg:py-9 max-sm:px-3 max-lg:px-6'>
<div className="container mx-auto border-[1px] border-slate-900 rounded-[20px] flex max-lg:flex-col justify-between overflow-hidden">
<form className="bg-slate-900 p-[60px] max-md:p-10 w-full max-w-[632px] max-lg:max-w-none">
<h2 className='text-white text-[28px] max-md:text-xl font-medium max-w-[405px] mb-10 max-md:mb-6'>Получите индивидуальные решения для вашего бизнеса</h2>
<div className="w-[320px]">
<Input Ico={BsPerson} wrapperClasses='mb-[30px]' placeholder='Ваше имя'/>
<Input Ico={BsPerson} wrapperClasses='mb-[30px] max-md:mb-6' placeholder='Ваше имя'/>
<Input type='tel' Ico={BsTelephone} wrapperClasses='mb-[25px]' placeholder='+7 (___) ___ - __ - __'/>
</div>
<p className='text-white text-xs font-normal max-w-[286px] mb-[30px]'>Нажимая на кнопку Отправить заявку, Вы даете согласие на обработку Ваших персональных данных</p>
<div className="flex items-center">
<Button className='h-[46px] mr-7'>Оставить заявку</Button>
<p className='text-white font-medium text-base mr-7'>или</p>
<p className='text-white text-xs font-normal max-w-[286px] mb-[30px] max-md:mb-6'>Нажимая на кнопку Отправить заявку, Вы даете согласие на обработку Ваших персональных данных</p>
<div className="flex max-sm:flex-col items-center max-sm:max-w-[190px]">
<Button className='h-[46px] mr-7 max-sm:mr-0 max-sm:mb-2'>Оставить заявку</Button>
<p className='text-white font-medium text-base mr-7 max-sm:mr-0 max-sm:mb-2'>или</p>
<Social/>
</div>
</form>
<YMaps className="w-full">
<Map className="w-full" defaultState={{ center: [55.75, 37.57], zoom: 9 }} />
<YMaps className="w-full max-md:h-[350px]">
<Map className="w-full max-md:h-[350px]" defaultState={{ center: [55.75, 37.57], zoom: 9 }} />
</YMaps>
</div>
</section>

@ -0,0 +1,41 @@
import React from 'react'
import { StaticImage } from 'gatsby-plugin-image';
import Title from '../UI/Title';
import Button from '../UI/Button';
const Hero = () => {
return (
<section className={'bg-[#F7F7FF] pt-[70px] max-2xl:pt-10 max-lg:pt-7 md:h-[700px] xl:h-[710px] 2xl:h-[890px] max-sm:px-3 max-lg:px-6'}>
<div className="container h-full mx-auto flex flex-col items-center relative">
<Title className='mb-[70px] max-2xl:mb-12 max-md:mb-4 md:max-lg:mb-8' h1>Наши <span className='text-red-500'>контакты</span></Title>
<div className="flex max-lg:flex-col justify-between items-center max-lg:items-start w-full">
<div className="flex flex-col items-start max-lg:mb-20 z-10">
<div className="mb-6 max-md:mb-3 max-w-[615px] max-md:text-base">
<h3 className='text-black font-medium text-lg max-lg:text-base leading-none mb-[9px] max-md:mb-2'>Телефон:</h3>
<a href="tel:+79602819790" aria-label='phone' className='text-slate-900 font-bold text-4xl max-lg:text-xl max-2xl:text-[28px]'>+7 (960) 281 97-90</a>
</div>
<div className="mb-6 max-md:mb-3 max-w-[615px] max-md:text-base">
<h3 className='text-black font-medium text-lg max-lg:text-base leading-none mb-[9px] max-md:mb-2'>E-mail:</h3>
<a href="mailto:example@mail.ru" aria-label='email' className='text-slate-900 font-bold text-4xl max-lg:text-xl max-2xl:text-[28px]'>example@mail.ru</a>
</div>
<div className="mb-6 max-md:mb-3 max-w-[660px] max-md:text-base">
<h3 className='text-black font-medium text-lg max-lg:text-base leading-none mb-[9px] max-md:mb-2'>Наш адрес:</h3>
<p className='text-slate-900 font-bold text-4xl max-lg:text-xl max-2xl:text-[28px] leading-snug'>г.Санкт-Петербург, вн.тер.г. Муниципальный Округ Пулковский Меридиан, ул Бассейная, д. 27, Литера А, помещ. 23-н, офис 1</p>
</div>
<div className="mb-6 max-md:mb-3 max-w-[615px] max-md:text-base">
<p className='text-slate-900 font-bold text-4xl max-lg:text-xl max-2xl:text-[28px] leading-snug mb-[10px]'>9:00 ДО 21:00 ПН-СБ</p>
<p className='text-black font-medium text-lg max-lg:text-base max-w-[300px]'>В субботу мы работаем по предварительной записи</p>
</div>
<Button>Оставить заявку</Button>
</div>
<div className="w-[1000px] max-lg:w-[360px] max-2xl:w-[700px] h-auto max-lg:self-center absolute max-lg:relative right-0 select-none pointer-events-none bottom-0">
<div className="bg-red-500 w-[560px] h-[560px] max-2xl:w-[470px] max-2xl:h-[470px] max-lg:w-[300px] max-lg:h-[300px] rounded-full absolute max-lg:right-8 max-lg:bottom-0 right-20 bottom-30"></div>
<StaticImage src="../../images/woman-account2.png" quality='100' alt="hero" placeholder="blurred" className='object-cover w-full h-full rounded-[30px]'/>
</div>
</div>
</div>
</section>
)
}
export default Hero;

@ -2,9 +2,9 @@ import React from 'react'
const Count = ({number, text, ...props}) => {
return (
<div className='text-center basis-1/2 mb-[70px]' {...props}>
<span className='text-red-500 text-5xl font-bold mb-2'>{number}</span>
<p className='text-slate-600 text-xl font-medium'>{text}</p>
<div className='text-center basis-1/2 mb-[70px] max-md:mb-8' {...props}>
<span className='text-red-500 text-5xl max-md:text-4xl font-bold mb-2'>{number}</span>
<p className='text-slate-600 text-xl max-md:text-lg font-medium'>{text}</p>
</div>
)
}

@ -13,16 +13,16 @@ const Counts = () => {
])
return (
<section className='bg-[#F7F7FF] py-[90px]'>
<section className='bg-[#F7F7FF] py-[90px] max-md:py-9 max-sm:px-3 max-md:px-6'>
<div className="container mx-auto">
<Title className='mb-[70px]' titleClass='max-w-[570px]' subtitle='Впечатляющие результаты, доверие клиентов и финансовая эффективность!'>Наши цифры говорят сами за себя</Title>
<div className="flex justify-between items-center">
<div className="flex flex-wrap [&>*:nth-last-child(2)]:mb-0 [&>*:nth-last-child(1)]:mb-0 mr-32">
<Title className='mb-[70px] max-md:mb-8' titleClass='max-w-[570px]' subtitle='Впечатляющие результаты, доверие клиентов и финансовая эффективность!'>Наши цифры говорят сами за себя</Title>
<div className="flex max-lg:flex-col justify-between items-center">
<div className="flex flex-wrap [&>*:nth-last-child(2)]:mb-0 [&>*:nth-last-child(1)]:mb-0 mr-32 max-lg:mr-0 max-lg:mb-8">
{counts.map(count=>
<Count key={count.id} number={count.number} text={count.text}/>
)}
</div>
<StaticImage src='../../images/count.jpg' alt='count-image' className='rounded-[30px] max-w-[670px] max-h-[456px]' placeholder='blurred'/>
<StaticImage src='../../images/count.jpg' alt='count-image' className='rounded-[30px] max-md:rounded-[20px] max-w-[670px] lg:max-xl:max-w-[500px] max-h-[456px]' placeholder='blurred'/>
</div>
</div>
</section>

@ -6,13 +6,13 @@ import Social from './UI/Social';
const Footer = () => {
return (
<footer className='bg-slate-900 mt-[60px] rounded-t-[20px] pt-10'>
<nav className="container mx-auto items-stretch flex justify-between relative py-3">
<div className="flex flex-col">
<Logo className="w-32 mb-10"/>
<footer className='bg-slate-900 mt-[60px] rounded-t-[20px] pt-10 max-md:py-10 max-sm:px-3 max-md:px-6'>
<nav className="container mx-auto items-stretch flex max-md:flex-col justify-between relative py-3">
<div className="flex flex-col max-md:mb-5 max-md:items-center">
<Logo className="w-32 max-md:w-28 mb-10 max-md:mb-5"/>
<p className='text-slate-400 text-xs font-medium'>© 2023 АудитКонсалт</p>
</div>
<div className="flex flex-col">
<div className="flex flex-col max-md:mb-5">
<Link className='text-base font-medium text-red-500 hover:text-red-600 mb-4' to='/about'>О компании</Link>
<ul className='flex flex-col font-normal text-sm text-white'>
<li className='mb-[7px]'><Link className='hover:text-slate-200 transition-all' to='/oferta'>Публичная оферта</Link></li>
@ -20,7 +20,7 @@ const Footer = () => {
</ul>
</div>
<div className="flex flex-col">
<Link className='text-base font-medium text-red-500 hover:text-red-600 mb-4' to='/about'>Услуги</Link>
<Link className='text-base font-medium text-red-500 hover:text-red-600 mb-4' to='/services'>Услуги</Link>
<p className='mb-[10px] text-white text-sm font-normal'>Физическим лицам</p>
<ul className='flex flex-col mb-5 font-normal text-xs text-slate-400'>
<li className='mb-[7px]'><Link className='hover:text-slate-500 transition-all' to='/oferta'>{'>'} 3-НДФЛ</Link></li>
@ -28,26 +28,26 @@ const Footer = () => {
<li><Link className='hover:text-slate-500 transition-all' to='/policy'>{'>'} Контролируемые иностранные компании</Link></li>
</ul>
<p className='mb-[10px] text-white text-sm font-normal'>Юридическим лицам</p>
<ul className='flex flex-col mb-5 font-normal text-xs text-slate-400'>
<ul className='flex flex-col mb-5 font-normal text-xs text-slate-400 '>
<li className='mb-[7px]'><Link className='hover:text-slate-500 transition-all' to='/oferta'>{'>'} Работа с налоговыми органами</Link></li>
<li className='mb-[7px]'><Link className='hover:text-slate-500 transition-all' to='/policy'>{'>'} Аутсорсинг бухгалтерских услуг</Link></li>
<li className='mb-[10px]'><Link className='hover:text-slate-500 transition-all' to='/policy'>{'>'} Бухгалтерское сопровождение</Link></li>
<li><Link className='text-red-400 hover:text-red-600 transition-all' to='/policy'>+ еще 14 услуг</Link></li>
</ul>
</div>
<div className="flex flex-col pr-[104px] border-r-[1px] border-slate-400">
<div className="flex flex-col pr-[104px] border-r-[1px] border-slate-400 max-md:mb-5 max-md:border-r-0">
<ul className='flex flex-col font-medium text-base text-slate-400'>
<li className='mb-[17px]'><Link className='hover:text-slate-500 transition-all' to='/oferta'>Прайс-лист</Link></li>
<li className='mb-[17px]'><Link className='hover:text-slate-500 transition-all' to='/oferta'>Контакты</Link></li>
<li className='mb-[17px]'><Link className='hover:text-slate-500 transition-all' to='/contacts'>Контакты</Link></li>
<li><Link className='hover:text-slate-500 transition-all' to='/policy'>Калькулятор</Link></li>
</ul>
</div>
<div className="flex flex-col">
<div className="flex flex-col mb-5">
<p className='text-slate-500 text-xs mb-2 font-medium'>Всегда рады вашим звонкам</p>
<a className='text-xl font-bold text-white hover:text-slate-300 transition-all' href="tel:+79999999999">+7 (999) 999 99-99</a>
<a className='text-xl font-bold text-white hover:text-slate-300 transition-all' href="tel:+79602819790">+7 (960) 281 97-90</a>
</div>
<p className='text-white text-sm font-medium mb-5 max-w-[210px]'>г.Москва, ул. 1-я Дубровская, д. 13А, стр. 2, офис 415</p>
<p className='text-white text-sm font-medium mb-5 max-w-[210px]'>г.Санкт-Петербург, вн.тер.г. Муниципальный Округ Пулковский Меридиан, ул Бассейная, д. 27, Литера А, помещ. 23-н, офис 1</p>
<Social/>
</div>
</nav>

@ -1,31 +1,66 @@
import React from 'react'
import React, { useEffect, useState } from 'react'
import { Link } from 'gatsby';
import { disableBodyScroll, enableBodyScroll } from "body-scroll-lock";
import Logo from "../images/logo.svg";
import { BiSearchAlt } from "@react-icons/all-files/bi/BiSearchAlt";
import { BiPhoneCall } from "@react-icons/all-files/bi/BiPhoneCall";
import { BsFillSunFill } from "@react-icons/all-files/bs/BsFillSunFill";
const Header = () => {
const [scrollTopPos, setScrollTopPos] = useState(0);
const [burgerMenu, setBurgerMenu] = useState(0);
const burgerGeneralClasses = "bg-black w-7 h-[3px] before:w-7 before:h-[3px] before:bg-black before:block before:relative after:w-7 after:h-[3px] after:bg-black after:block after:relative transition-all before:transition-all after:transition-all";
const burgerActivation = () => {
window.addEventListener("resize", (e) => {
if(window.screen.width > 767) {
setBurgerMenu(0);
enableBodyScroll(document.body);
}
});
if(burgerMenu) {
setBurgerMenu(0);
enableBodyScroll(document.body);
} else {
setBurgerMenu(1);
disableBodyScroll(document.body);
}
}
useEffect(() => {
window.addEventListener('scroll', async () => {
setScrollTopPos(window.scrollY);
})
}, [])
return (
<header className='bg-[#F7F7FF]'>
<nav className="container mx-auto items-center flex justify-between relative py-3 h-24">
<Link to='/'><Logo className="w-32"/></Link>
<ul className='flex items-center'>
<li className='mr-14 font-bold text-lg text-black'><Link to='/about'>О нас</Link></li>
<li className='mr-14 font-bold text-lg text-black'><Link to='/services'>Услуги</Link></li>
<li className='mr-14 font-bold text-lg text-black'><Link to='/price'>Цены</Link></li>
<li className='font-bold text-lg text-black'><Link to='/contacts'>Контакты</Link></li>
</ul>
<div className="flex items-center">
<ul className='flex items-center'>
<li className='mr-4 text-2xl'><BiSearchAlt/></li>
<li className='mr-4 text-2xl'><BiPhoneCall/></li>
<li className='mr-8 text-2xl'><BsFillSunFill/></li>
<header className={burgerMenu ? 'max-md:h-24 bg-[#F7F7FF]': 'h-24 bg-[#F7F7FF]'} >
<div className={scrollTopPos > 60 ? 'fixed w-full bg-[#fff] md:bg-white shadow-md z-20 [&>nav]:h-16 md:[&>nav>a>.logo]:w-20 transition-all': 'z-20 fixed w-full bg-[#F7F7FF]'}>
<nav className="max-sm:px-3 max-md:px-6 container mx-auto items-center flex justify-between relative py-3 h-24 transition-all">
<Link to='/'><Logo className="logo max-md:w-16 w-32 transition-all"/></Link>
<ul className={burgerMenu ? 'max-md:-translate-y-0 max-md:bg-[#F7F7FF] max-md:justify-center max-md:h-screen max-md:fixed max-md:w-full max-md:top-0 max-md:left-0 flex max-md:flex-col items-center max-md:text-4xl md:text-lg text-black' : 'max-md:-translate-y-full max-md:bg-[#F7F7FF] max-md:justify-center max-md:h-screen max-md:fixed max-md:w-full max-md:top-0 max-md:left-0 flex max-md:flex-col items-center max-md:text-4xl md:text-lg text-black'}>
<li className='md:mr-14 max-md:mb-5 font-bold'><Link to='/about'>О нас</Link></li>
<li className='md:mr-14 max-md:mb-5 font-bold'><Link to='/services'>Услуги</Link></li>
<li className='md:mr-14 max-md:mb-5 font-bold'><Link to='/price'>Цены</Link></li>
<li className='font-bold'><Link to='/contacts'>Контакты</Link></li>
</ul>
<a className='text-xl font-bold' href="tel:+79999999999">+7 (999) 999 99-99</a>
</div>
</nav>
<div className="flex items-center max-md:justify-between max-md:w-full max-md:px-2 order-2">
<ul className='flex items-center max-md:text-xl text-2xl'>
<li className='mr-4 max-md:mr-3'><BiSearchAlt/></li>
<li className='mr-4 max-md:mr-3'><BiPhoneCall/></li>
<li className='mr-8 max-md:mr-3'><BsFillSunFill/></li>
</ul>
<a className='max-md:text-sm text-xl font-bold order-1' href="tel:+79602819790">+7 (960) 281 97-90</a>
</div>
<div className="md:hidden cursor-pointer order-3" role="presentation" onClick={e=> burgerActivation()} onKeyDown={e=> this.handleKeyDown}>
<div className={burgerMenu ? burgerGeneralClasses + ' before:rotate-45 before:top-0 after:-rotate-45 after:bottom-[3px]' : burgerGeneralClasses + ' before:top-[7px] after:bottom-[10px]'}></div>
</div>
</nav>
</div>
</header>
)
}

@ -6,15 +6,15 @@ import Title from './UI/Title';
const Hero = () => {
return (
<section className={'bg-[#F7F7FF] h-[873px]'}>
<section className={'bg-[#F7F7FF] h-auto max-md:pb-9 md:h-[680px] xl:h-[700px] 2xl:h-[873px] max-sm:px-3 max-lg:px-6'}>
<div className="container mx-auto flex flex-col items-center">
<Title className='mt-[40px]' subtitle='Получите комплексное обслуживание для устойчивого развития вашего бизнеса в новых условиях' h1>Максимизируйте вашу финансовую эффективность с профессиональными <span className='text-red-500'>бухгалтерскими услугами!</span></Title>
<div className="w-[1130px] h-[550px] mt-12 relative before:absolute before:w-full before:h-full before:bg-red-500 before:rounded-[30px] before:-bottom-5 before:-right-5 before:opacity-50">
<Link to='/calculator' className="flex flex-col items-center justify-center text-white w-[170px] h-[170px] bg-red-500 hover:bg-red-600 transition-all duration-200 rounded-full absolute z-10 top-0 right-12 -translate-y-1/2">
<p className='uppercase mb-[5px] text-lg font-bold'>Калькулятор</p>
<p className='text-base font-medium'>Сколько это стоит ?</p>
<Title className='mt-[40px] xl:max-2xl:mt-5' subtitle='Получите комплексное обслуживание для устойчивого развития вашего бизнеса в новых условиях' h1>Максимизируйте вашу финансовую эффективность с профессиональными <span className='text-red-500'>бухгалтерскими услугами!</span></Title>
<div className="md:w-[660px] lg:w-[800px] xl:w-[960px] 2xl:w-[1130px] max-sm:h-[220px] max-md:h-[400px] md:h-[410px] lg:h-[400px] xl:h-[430px] 2xl:h-[550px] mt-12 relative before:absolute before:w-full before:h-full before:bg-red-500 before:rounded-[20px] md:before:rounded-[30px] before:-bottom-2 md:before:-bottom-5 before:-right-2 md:before:-right-5 before:opacity-50">
<Link to='/calculator' className="flex flex-col items-center justify-center text-white w-[170px] max-md:w-32 max-md:h-32 h-[170px] bg-red-500 hover:bg-red-600 transition-all duration-200 rounded-full absolute z-10 top-0 right-12 max-md:right-1 -translate-y-1/2">
<p className='uppercase mb-[5px] max-md:mb-[2px] text-lg max-md:text-sm font-bold'>Калькулятор</p>
<p className='text-base max-md:text-xs font-medium'>Сколько это стоит ?</p>
</Link>
<StaticImage src="../images/index-hero.jpg" alt="hero" placeholder="blurred" className='object-cover w-full h-full rounded-[30px]'/>
<StaticImage src="../images/index-hero.jpg" alt="hero" placeholder="blurred" className='object-cover w-full h-full rounded-[20px] md:rounded-[30px]'/>
</div>
</div>
</section>

@ -14,13 +14,13 @@ const Popular = () => {
{id: 2, text: 'Аутосортинг бухгалтерии, оптимизация финансовых процессов для вашего бизнеса.', ico: BusinessTimeAdd},
]);
return (
<section className='py-[90px]'>
<section className='py-[90px] max-md:py-9 max-sm:px-3 max-md:px-6'>
<div className="container mx-auto">
<Title className='mb-[70px]' titleClass='max-w-[540px]' subtitle='Максимизируйте потенциал своего бизнеса с помощью наших превосходных услуг!'>Популярные услуги для вашего бизнеса</Title>
<Title className='mb-[70px] max-md:mb-8' titleClass='max-w-[540px]' subtitle='Максимизируйте потенциал своего бизнеса с помощью наших превосходных услуг!'>Популярные услуги для вашего бизнеса</Title>
<RichTextPoints2 points={services}>
<h3 className='text-black font-medium text-[28px] max-w-[400px] mb-[30px]'>Регистрация ООО и ИП без визита в инспекцию</h3>
<p className='text-slate-400 text-base font-medium max-w-[325px] mb-[30px]'>Быстрая и гарантированная регистрация ООО и ИП в удобном формате!</p>
<p className='text-slate-900 text-base font-medium max-w-[435px] mb-[30px]'>Регистрация ООО и ИП - это процесс официальной регистрации юридических структур в соответствии с законодательством страны. Позволяет создать легальное коммерческое предприятие и получить правовой статус для осуществления бизнеса.</p>
<h3 className='text-black font-medium text-[28px] max-md:text-xl max-w-[400px] mb-[30px] max-md:mb-4'>Регистрация ООО и ИП без визита в инспекцию</h3>
<p className='text-slate-400 text-base font-medium max-w-[325px] mb-[30px] max-md:mb-4'>Быстрая и гарантированная регистрация ООО и ИП в удобном формате!</p>
<p className='text-slate-900 text-base font-medium max-w-[435px] mb-[30px] max-md:mb-4'>Регистрация ООО и ИП - это процесс официальной регистрации юридических структур в соответствии с законодательством страны. Позволяет создать легальное коммерческое предприятие и получить правовой статус для осуществления бизнеса.</p>
<Button>Оставить заявку</Button>
</RichTextPoints2>
</div>

@ -6,21 +6,21 @@ import { BsDash } from "@react-icons/all-files/bs/BsDash";
const Price = ({tarif, price, conditions, popular, ...props}) => {
return (
<div className='bg-white py-8 px-9 rounded-[20px] max-w-[430px] relative' {...props}>
<div className='bg-white py-8 px-9 max-md:py-6 max-md:px-6 rounded-[20px] max-w-[430px] max-lg:max-w-none max-xl:max-w-[330px] max-2xl:max-w-[415px] max-lg:mb-[20px] sm:max-lg:basis-[calc(50%-8px)] sm:max-lg:flex-grow sm:max-lg:mr-[15px] relative' {...props}>
{popular &&
<span className="inline-block text-white font-medium text-xs bg-amber-500 py-1 px-3 rounded-[36px] absolute top-8 right-9">Популярный</span>
<span className="inline-block text-white font-medium text-xs bg-amber-500 py-1 px-3 rounded-[36px] absolute top-8 right-9 max-md:right-3 max-md:top-7">Популярный</span>
}
<span className='text-slate-700 text-xl font-medium mb-8 inline-block'>{tarif}</span>
<p className='text-slate-900 text-[50px] font-semibold mb-8'>{price} <span className='text-slate-600 text-base'>за месяц</span></p>
<Button className='w-full mb-[70px]'>Посмотреть подробнее</Button>
<span className='text-slate-700 text-xl max-md:text-lg font-medium mb-8 max-md:mb-5 inline-block'>{tarif}</span>
<p className='text-slate-900 text-[50px] max-xl:text-4xl font-semibold mb-8 max-md:mb-5'>{price} <span className='text-slate-600 text-base max-xl:text-sm'>за месяц</span></p>
<Button className='w-full mb-[70px] max-xl:mb-10'>Посмотреть подробнее</Button>
<div className="[&>*:last-child]:mb-0">
{conditions &&
conditions.map(condition=>
condition.check
?
<p key={condition.id} className="flex text-slate-600 text-base font-medium leading-6 mb-4"><span className='w-5 h-5 bg-red-500 mt-1 block rounded-full text-white text-xl mr-[14px]'><BsCheck/></span>{condition.text}</p>
<p key={condition.id} className="flex text-slate-600 text-base max-md:text-sm font-medium leading-6 mb-4"><span className='w-5 h-5 bg-red-500 mt-1 block rounded-full text-white text-xl mr-[14px]'><BsCheck/></span>{condition.text}</p>
:
<p key={condition.id} className="flex text-slate-600 text-base font-medium leading-6 mb-4"><span className='w-5 h-5 bg-gray-400 mt-1 block rounded-full text-white text-xl mr-[14px]'><BsDash/></span>{condition.text}</p>
<p key={condition.id} className="flex text-slate-600 text-base max-md:text-sm font-medium leading-6 mb-4"><span className='w-5 h-5 bg-gray-400 mt-1 block rounded-full text-white text-xl mr-[14px]'><BsDash/></span>{condition.text}</p>
)
}
</div>

@ -31,10 +31,10 @@ const PriceMain = () => {
]}
]);
return (
<section className='py-[90px] bg-[#F7F7FF]'>
<section className='py-[90px] bg-[#F7F7FF] max-md:py-9 max-sm:px-3 max-md:px-6'>
<div className="container mx-auto">
<Title className='mb-[70px]' titleClass='max-w-[570px]' subtitle='Наши новые клиенты ценят нашу лояльность и индивидуальный подход к расчетам.'>Стоимость бухгалтерских услуг</Title>
<div className="flex justify-between">
<Title className='mb-[70px] max-md:mb-8' titleClass='max-w-[570px]' subtitle='Наши новые клиенты ценят нашу лояльность и индивидуальный подход к расчетам.'>Стоимость бухгалтерских услуг</Title>
<div className="flex max-sm:flex-col sm:max-lg:flex-wrap justify-between sm:max-lg:[&>*:nth-child(2n)]:mr-0">
{prices.map(price=>
<Price key={price.id} tarif={price.tarif} price={price.price} conditions={price.conditions} popular={price.popular}/>
)}

@ -41,16 +41,24 @@ const Reviews = () => {
]);
return (
<section className='py-[90px]'>
<section className='py-[90px] max-md:py-9 max-sm:px-3 max-md:px-6'>
<div className="container mx-auto">
<div className="flex justify-between items-start w-full">
<h2 className='text-black max-w-[510px] font-semibold text-[44px] mb-[70px]'>Что о нас говорят наши клиенты</h2>
<div className="flex justify-between max-sm:flex-col max-md:mb-8 items-start w-full">
<h2 className='text-black max-w-[510px] max-md:max-w-none max-md:w-full font-semibold max-md:text-2xl max-xl:text-4xl max-2xl:text-[38px] max-md:mb-5 text-[44px] mb-[70px]'>Что о нас говорят наши клиенты</h2>
<div className="flex">
<button aria-label="Next slide" className='mr-5 w-16 h-16 border-2 border-slate-600 rounded-full text-[28px] flex justify-center items-center text-slate-600 hover:text-red-500 hover:border-red-500 transition-all' onClick={() => swiperInstance.slidePrev()}><BsArrowLeft/></button>
<button aria-label="Prev slide" className='w-16 h-16 border-2 border-slate-600 rounded-full text-[28px] flex justify-center items-center text-slate-600 hover:text-red-500 hover:border-red-500 transition-all' onClick={() => swiperInstance.slideNext()}><BsArrowRight/></button>
<button aria-label="Next slide" className='mr-5 max-md:mr-3 w-16 h-16 max-md:w-14 max-md:h-14 border-2 border-slate-600 rounded-full text-[28px] flex justify-center items-center text-slate-600 hover:text-red-500 hover:border-red-500 transition-all' onClick={() => swiperInstance.slidePrev()}><BsArrowLeft/></button>
<button aria-label="Prev slide" className='w-16 h-16 max-md:w-14 max-md:h-14 border-2 border-slate-600 rounded-full text-[28px] flex justify-center items-center text-slate-600 hover:text-red-500 hover:border-red-500 transition-all' onClick={() => swiperInstance.slideNext()}><BsArrowRight/></button>
</div>
</div>
<Swiper spaceBetween={50} slidesPerView={3} onSwiper={(swiper) => setSwiperInstance(swiper)}>
<Swiper spaceBetween={50} slidesPerView={1} onSwiper={(swiper) => setSwiperInstance(swiper)}
breakpoints={{
640: {
slidesPerView: 2,
},
1024: {
slidesPerView: 3,
},
}}>
{reviews.map(review=>
<SwiperSlide className='!h-auto' key={review.id}>
<Review title={review.title} text={review.text} date={review.date} img={review.img}/>

@ -5,9 +5,9 @@ const Point = ({title, ico, className, link, to = '/', textsize, ...props}) => {
const Inner = () => {
return (
<div className="p-2 pt-7 mr-5 mb-5 w-[200px] h-[200px] bg-[#F7F7FF] rounded-[20px] flex flex-col items-center text-slate-800">
<span className="mb-5 text-7xl">{ico}</span>
<p className={textsize === 'lg' ? 'whitespace-pre-wrap text-center text-lg leading-[1.3]' : 'whitespace-pre-wrap text-center text-xl'}>{title}</p>
<div className="p-1 pt-7 max-md:pt-4 mr-5 max-md:mr-4 mb-5 max-mb:mb-4 w-[200px] h-[200px] max-2xl:w-[195px] max-2xl:h-[195px] max-md:w-[155px] max-md:h-[155px] bg-[#F7F7FF] rounded-[20px] flex flex-col items-center text-slate-800">
<span className="mb-5 max-md:mb-3 text-7xl max-md:text-6xl">{ico}</span>
<p className={textsize === 'lg' ? 'whitespace-pre-wrap text-center text-lg max-md:text-sm leading-[1.3]' : 'whitespace-pre-wrap text-center text-xl max-md:text-lg'}>{title}</p>
</div>
)
}

@ -3,11 +3,11 @@ import React from 'react'
import Point from './Point';
const RichTextPoints = ({children, className, points, count = 3, textsize }) => {
const RichTextPoints = ({children, className, wrapperClass, points, count = 3, textsize }) => {
return (
<div className='flex justify-between items-center'>
<div className={['basis-1/2', className].join(' ')}>{children}</div>
<div style={{'--pointsBasis': count * 220 + 'px'}} className="flex justify-center basis-[var(--pointsBasis)] flex-wrap">
<div className={['flex max-md:flex-col justify-between items-center', wrapperClass].join(' ')}>
<div className={['basis-1/2 max-md:mb-8', className].join(' ')}>{children}</div>
<div style={{'--pointsBasis': count * 220 + 'px'}} className="flex justify-center basis-[var(--pointsBasis)] max-md:basis-full flex-wrap max-md:-mr-4">
{points.map(point=>
<Point key={point.id} ico={point.ico} link={point.link} to={point.to} title={point.title} textsize={textsize}/>
)}

@ -2,8 +2,8 @@ import React from 'react'
const Point = ({Ico, text}) => {
return (
<div className='bg-[#F7F7FF] text-7xl rounded-[20px] flex mb-[20px] flex-grow p-10'>
<div className="text-slate-900 text-[54px] mr-[30px]"><Ico addictionalColor='#ef4444'/></div>
<div className='bg-[#F7F7FF] text-7xl rounded-[20px] flex mb-[20px] flex-grow p-10 max-md:p-7'>
<div className="text-slate-900 text-[54px] max-md:text-5xl mr-[30px]"><Ico addictionalColor='#ef4444'/></div>
<p className='text-slate-900 text-base font-medium leading-normal'>{text}</p>
</div>
)

@ -0,0 +1,16 @@
import React from 'react'
import { Link } from 'gatsby';
const Point2 = ({Ico, link = '/', title, text}) => {
return (
<Link to={link} className='bg-white text-7xl rounded-[20px] flex mb-[20px] flex-grow p-10 max-md:p-7'>
<div className="text-slate-900 text-[54px] max-md:text-5xl mr-[30px]"><Ico addictionalColor='#ef4444'/></div>
<div className="text-slate-900">
<h3 className='text-lg font-semibold mb-[10px]'>{title}</h3>
<p className='text-base font-medium leading-normal'>{text}</p>
</div>
</Link>
)
}
export default Point2;

@ -3,8 +3,8 @@ import Point from './Point';
const RichTextPoints2 = ({children, points}) => {
return (
<div className='flex justify-between items-stretch'>
<div className="basis-1/2 p-10 bg-[#F7F7FF] rounded-[20px] leading-normal mr-[20px]">{children}</div>
<div className='flex max-md:flex-col justify-between items-stretch'>
<div className="basis-1/2 p-10 max-md:p-7 bg-[#F7F7FF] rounded-[20px] leading-normal mr-[20px] max-md:mr-0 max-md:mb-[20px]">{children}</div>
<div className="flex flex-col basis-1/2 [&>*:last-child]:mb-0">
{points.map(point=>
<Point key={point.id} Ico={point.ico} text={point.text}/>

@ -13,21 +13,21 @@ const Hero = () => {
{id: 1, title: 'Услуги'}
]);
return (
<section className={'bg-[#F7F7FF] h-[873px]'}>
<section className={'bg-[#F7F7FF] max-md:pb-9 md:h-[740px] xl:h-[760px] 2xl:h-[873px] max-sm:px-3 max-lg:px-6'}>
<div className="container mx-auto flex flex-col items-center">
<Breadcrumbs className='mt-[60px] mb-[50px]' data={breadcrumbs} />
<Title className='mb-[75px]' subtitle='Коммерческая деятельность любых размеров требует участия квалифицированного бухгалтера.' h1>Наши услуги</Title>
<div className="flex justify-between items-center w-full">
<div className="flex flex-col items-start">
<p className='max-w-[430px] text-slate-600 text-lg font-medium leading-normal mb-[30px]'>Помощь специалиста требуется не только юридическим, но и физическим лицам, особенно в ситуациях, касающихся заполнения налоговых документов и получения вычетов. «АудитКонсалт» предлагает своим клиентам комплекс услуг, помогающий быстро решить различные проблемы.</p>
<AnchorLink itemProp="url" className="cursor-pointer text-slate-600 hover:text-red-500 transition-all font-medium text-[28px] mb-5" to="physlic" smooth={true}>{'>'} Физическим лицам</AnchorLink>
<AnchorLink itemProp="url" className="cursor-pointer text-slate-600 hover:text-red-500 transition-all font-medium text-[28px] mb-[30px]" to="urlic" smooth={true}>{'>'} Юридическим лицам</AnchorLink>
<Breadcrumbs className='mt-[60px] max-md:mt-0 mb-[50px] max-md:mb-7' data={breadcrumbs} />
<Title className='mb-[75px] max-md:mb-8' subtitle='Коммерческая деятельность любых размеров требует участия квалифицированного бухгалтера.' h1>Наши услуги</Title>
<div className="flex max-md:flex-col justify-between items-center max-lg:items-start w-full">
<div className="flex flex-col items-start max-md:mb-10">
<p className='max-w-[430px] text-slate-600 text-lg max-md:text-base font-medium leading-normal mb-[30px] max-md:mb-6'>Помощь специалиста требуется не только юридическим, но и физическим лицам, особенно в ситуациях, касающихся заполнения налоговых документов и получения вычетов. «АудитКонсалт» предлагает своим клиентам комплекс услуг, помогающий быстро решить различные проблемы.</p>
<AnchorLink itemProp="url" className="cursor-pointer text-slate-600 hover:text-red-500 transition-all font-medium text-[28px] max-md:text-2xl mb-5" to="physlic" smooth={true}>{'>'} Физическим лицам</AnchorLink>
<AnchorLink itemProp="url" className="cursor-pointer text-slate-600 hover:text-red-500 transition-all font-medium text-[28px] max-md:text-2xl mb-[30px]" to="urlic" smooth={true}>{'>'} Юридическим лицам</AnchorLink>
<Button>Оставить заявку</Button>
</div>
<div className="w-[805px] h-[450px] relative">
<Link to='/calculator' className="flex flex-col items-center justify-center text-white w-[150px] h-[150px] bg-red-500 hover:bg-red-600 transition-all duration-200 rounded-full absolute z-10 top-5 left-5 -translate-y-1/2 -translate-x-1/2">
<p className='uppercase mb-[5px] text-base font-bold'>Калькулятор</p>
<p className='text-sm font-medium'>Сколько это стоит ?</p>
<div className="w-[805px] max-md:w-full h-[450px] max-sm:h-[250px] max-md:h-[350px] max-lg:w-[400px] max-lg:h-[300px] relative">
<Link to='/calculator' className="flex flex-col items-center justify-center text-white w-[150px] max-lg:w-[120px] h-[150px] max-lg:h-[120px] bg-red-500 hover:bg-red-600 transition-all duration-200 rounded-full absolute z-10 top-5 lh:left-5 max-lg:right-5 -translate-y-1/2 lg:-translate-x-1/2">
<p className='uppercase mb-[5px] text-base max-lg:text-sm font-bold'>Калькулятор</p>
<p className='text-sm max-lg:text-xs font-medium'>Сколько это стоит ?</p>
</Link>
<StaticImage src="../../images/services-hero.jpg" alt="hero" placeholder="blurred" className='object-cover w-full h-full rounded-[30px]'/>
</div>

@ -19,11 +19,11 @@ const PhysLic = () => {
{id: 4, title: 'Выпуск электронной цифровой подписи', to: '/services', ico: <Signature/>, link: true},
]);
return (
<section className='py-[90px]'>
<section className='py-[90px] max-md:py-9 max-sm:px-3 max-md:px-6 overflow-hidden'>
<div className="container mx-auto">
<Title className='mb-[70px]' titleClass="max-w-[280px]">Физическим лицам</Title>
<RichTextPoints points={points} textsize='lg'>
<p className='mb-6 text-slate-800 text-lg leading-7 max-w-[614px]'>Наши высококвалифицированные специалисты также предлагают полную поддержку физическим лицам в отношении налоговых вопросов. Мы готовы помочь вам не только с подготовкой налоговых деклараций по форме 3-НДФЛ в соответствии с требованиями Налогового кодекса, но и с представлением других отчетов, предусмотренных законодательством Российской Федерации. Благодаря опыту наших специалистов, которые ранее работали в налоговых органах, мы можем предоставить вам качественные консультации и эффективную помощь по всем вопросам, связанным с вашими взаимоотношениями с налоговыми органами. Мы стремимся обеспечить вашу полную уверенность в соблюдении налоговых обязательств и помочь вам достичь оптимальных результатов в сфере налогообложения.</p>
<Title className='mb-[70px] max-md:mb-8' titleClass="max-w-[280px]">Физическим лицам</Title>
<RichTextPoints points={points} textsize='lg' wrapperClass='md:max-lg:items-start'>
<p className='mb-6 text-slate-800 text-lg max-md:text-base leading-7 max-w-[614px]'>Наши высококвалифицированные специалисты также предлагают полную поддержку физическим лицам в отношении налоговых вопросов. Мы готовы помочь вам не только с подготовкой налоговых деклараций по форме 3-НДФЛ в соответствии с требованиями Налогового кодекса, но и с представлением других отчетов, предусмотренных законодательством Российской Федерации. Благодаря опыту наших специалистов, которые ранее работали в налоговых органах, мы можем предоставить вам качественные консультации и эффективную помощь по всем вопросам, связанным с вашими взаимоотношениями с налоговыми органами. Мы стремимся обеспечить вашу полную уверенность в соблюдении налоговых обязательств и помочь вам достичь оптимальных результатов в сфере налогообложения.</p>
<Button>Калькулятор</Button>
</RichTextPoints>
</div>

@ -38,10 +38,10 @@ const UrLic = () => {
{id: 14, title: 'Регистрация ООО и ИП без визита в инспекцию', to: '/services', ico: <DocumentPen/>, link: true},
]);
return (
<section className='py-[90px]'>
<section className='py-[90px] max-md:py-9 max-sm:px-3 max-md:px-6 overflow-hidden'>
<div className="container mx-auto">
<Title className='mb-[70px]' titleClass="max-w-[280px]">Юридическим лицам</Title>
<RichTextPoints className='max-w-[465px]' count='4' points={points} textsize='lg'>
<Title className='mb-[70px] max-md:mb-8' titleClass="max-w-[280px]">Юридическим лицам</Title>
<RichTextPoints className='max-w-[465px]' count='4' points={points} textsize='lg' wrapperClass='xl:max-2xl:items-start'>
<p className='mb-6 text-slate-800 text-lg leading-7 max-w-[614px]'>Современная коммерческая деятельность не может обойтись без участия опытного бухгалтера, специалиста по кадрам и налогового консультанта. Они могут помочь избежать проблем с контролирующими органами и оптимально организовать бизнес.</p>
<p className='mb-6 text-slate-800 text-lg leading-7 max-w-[614px]'>Мы практикуем индивидуальный подход к каждому клиенту. Данное правило является основополагающим в нашей работе с заказчиками. Мы полностью вникаем в суть проблем своего клиента, думаем вместе с ним, анализируем особенности его бизнеса.</p>
<p className='mb-6 text-slate-800 text-lg leading-7 max-w-[614px]'>Клиентам наших услуг доступен Личный кабинет заказчика для максимально удобного взаимодействия. А страхование ответственности в ведущих страховых компаниях России распространяется на все оказываемые нами услуги. Все это позволяет предложить нашим клиентам лучшие условия сотрудничества!</p>

@ -6,19 +6,19 @@ import Button from '../UI/Button';
const Workers = () => {
return (
<section className="py-[90px] bg-[#F7F7FF]">
<section className="py-[90px] max-md:py-9 max-sm:px-3 max-md:px-6 bg-[#F7F7FF]">
<div className="container mx-auto">
<Title titleClass='max-w-[500px]' className='mb-[70px]' subtitle='Максимизируйте свои налоговые преимущества'>Доверьтесь опытным специалистам</Title>
<div className="flex justify-between items-center">
<div className="w-[670px] h-[456px] relative">
<div className="flex flex-col items-center justify-center text-white w-[190px] h-[190px] bg-red-500 hover:bg-red-600 transition-all duration-200 rounded-full absolute z-10 top-5 right-5 -translate-y-1/2 translate-x-1/2">
<p className='uppercase text-center text-lg font-medium'>Мы знаем более<br/><b className='font-semibold text-[28px]'>1800</b><br/> законов РФ</p>
<Title titleClass='max-w-[500px]' className='mb-[70px] max-md:mb-8' subtitle='Максимизируйте свои налоговые преимущества'>Доверьтесь опытным специалистам</Title>
<div className="flex justify-between items-center max-lg:items-start max-lg:flex-col">
<div className="w-[670px] max-lg:w-full max-sm:h-[300px] max-md:h-[400px] lg:max-xl:max-w-[550px] max-lg:h-[500px] h-[456px] relative max-lg:order-2">
<div className="flex flex-col items-center justify-center text-white w-[190px] max-lg:w-[145px] h-[190px] max-lg:h-[145px] bg-red-500 rounded-full absolute z-10 top-5 right-5 xl:max-2xl:right-9 -translate-y-1/2 xl:translate-x-1/2">
<p className='uppercase text-center text-lg max-lg:text-base font-medium'>Мы знаем более<br/><b className='font-semibold max-lg:text-lg text-[28px]'>1800</b><br/> законов РФ</p>
</div>
<StaticImage src="../../images/campaign-creators.jpg" alt="hero" placeholder="blurred" className='object-cover w-full h-full rounded-[30px]'/>
</div>
<div className="flex flex-col items-start max-w-[520px] mr-6">
<p className='text-slate-600 font-medium text-xl leading-normal mb-7'>Мы практикуем индивидуальный подход к каждому клиенту. Данное правило является основополагающим в нашей работе с заказчиками. Мы полностью вникаем в суть проблем своего клиента, думаем вместе с ним, анализируем особенности его бизнеса.</p>
<p className='text-slate-600 font-medium text-xl leading-normal mb-[30px]'>Это позволяет нам понять настоящие причины возникновения сложностей и подыскать оптимальные способы решения</p>
<div className="flex flex-col items-start max-w-[520px] lg:max-xl:max-w-[400px] mr-6 max-lg:mr-0 max-lg:mb-14 max-lg:order-1">
<p className='text-slate-600 font-medium text-xl max-lg:text-base leading-normal mb-7 max-lg:mb-5'>Мы практикуем индивидуальный подход к каждому клиенту. Данное правило является основополагающим в нашей работе с заказчиками. Мы полностью вникаем в суть проблем своего клиента, думаем вместе с ним, анализируем особенности его бизнеса.</p>
<p className='text-slate-600 font-medium text-xl max-lg:text-base leading-normal mb-[30px] max-lg:mb-5'>Это позволяет нам понять настоящие причины возникновения сложностей и подыскать оптимальные способы решения</p>
<Button>Оставить заявку</Button>
</div>
</div>

@ -0,0 +1,18 @@
import React from 'react';
import uniqid from 'uniqid';
import { BsCheck } from "@react-icons/all-files/bs/BsCheck";
const CheckBox = ({ className, labelClasses, label, wrapperClasses, name, ...props }) => {
const uid = uniqid();
return (
<div className={['flex relative w-full', wrapperClasses].join(' ')}>
<input type='checkbox' name={name} id={uid} className={['[&:checked+label]:before:bg-red-500 [&:checked+label]:before:border-red-500 [&:checked+label]:text-red-500 hidden w-full bg-transparent border-b-[1px] py-2 pl-[30px] pr-4 px-5 placeholder:text-white text-base font-normal text-white focus:outline-none focus:border-b-red-500 ', className].join(' ')} {...props} />
<label htmlFor={uid} className={['cursor-pointer after:content-check before:w-5 before:h-5 after:w-3 after:h-3 after:absolute after:left-1 after:top-2 after:rounded-full before:absolute before:left-0 before:top-1 pl-9 relative before:bg-white before:border-[1.25px] before:border-slate-300 before:rounded-[5px] text-slate-800 text-lg font-medium', labelClasses].join(' ')}>{label}</label>
</div>
);
}
export default CheckBox;

@ -0,0 +1,16 @@
import React from 'react';
import uniqid from 'uniqid';
const Radio = ({ className, labelClasses, label, wrapperClasses, name, ...props }) => {
const uid = uniqid();
return (
<div className={['flex relative w-full', wrapperClasses].join(' ')}>
<input type='radio' name={name} id={uid} className={['[&:checked+label]:after:bg-red-500 [&:checked+label]:before:border-red-500 [&:checked+label]:text-red-500 hidden w-full bg-transparent border-b-[1px] py-2 pl-[30px] pr-4 px-5 placeholder:text-white text-base font-normal text-white focus:outline-none focus:border-b-red-500 ', className].join(' ')} {...props} />
<label htmlFor={uid} className={['cursor-pointer before:w-5 before:h-5 after:w-3 after:h-3 after:bg-white after:absolute after:left-1 after:top-2 after:rounded-full before:absolute before:left-0 before:top-1 pl-9 relative before:bg-white before:border-[1.25px] before:border-slate-300 before:rounded-full text-slate-800 text-lg font-medium', labelClasses].join(' ')}>{label}</label>
</div>
);
}
export default Radio;

@ -2,12 +2,12 @@ import React from 'react'
const Title = ({children, subtitle, className, titleClass, h1, ...props}) => {
return (
<div className={['flex justify-between items-start w-full', className].join(' ')} {...props}>
<div className={['flex max-md:flex-col justify-between items-start w-full', className].join(' ')} {...props}>
{h1
?
<h1 className={['text-black max-w-[845px] font-semibold text-[44px]', titleClass].join(' ')}>{children}</h1>
<h1 className={['text-black max-w-[845px] max-md:max-w-none max-md:w-full font-semibold max-md:text-2xl max-xl:text-4xl max-2xl:text-[38px] max-md:mb-5 text-[44px]', titleClass].join(' ')}>{children}</h1>
:
<h2 className={['text-black max-w-[845px] font-semibold text-[44px]', titleClass].join(' ')}>{children}</h2>
<h2 className={['text-black max-w-[845px] max-md:max-w-none max-md:w-full font-semibold max-md:text-2xl max-xl:text-4xl max-2xl:text-[38px] max-md:mb-5 text-[44px]', titleClass].join(' ')}>{children}</h2>
}
<p className='text-slate-600 max-w-[300px]'>{subtitle}</p>

@ -9,11 +9,6 @@ const DocumentsAdd = ({addictionalColor = "#fff"}) => {
<path d="M32.8823 7.64709H39.7647V16.0589C39.7647 17.3237 40.794 18.353 42.0588 18.353H50.4706V46.6471C50.4706 46.8499 50.39 47.0444 50.2466 47.1878C50.1032 47.3312 49.9087 47.4118 49.7059 47.4118H22.1948C22.0932 47.413 21.9923 47.3942 21.8979 47.3564C21.8036 47.3186 21.7176 47.2626 21.6449 47.1916C21.5722 47.1206 21.5141 47.036 21.4741 46.9426C21.4341 46.8491 21.4129 46.7487 21.4117 46.6471V45.1177C21.4117 44.9149 21.3312 44.7204 21.1878 44.577C21.0443 44.4335 20.8498 44.353 20.647 44.353C20.4442 44.353 20.2497 44.4335 20.1063 44.577C19.9629 44.7204 19.8823 44.9149 19.8823 45.1177V46.6471C19.8823 47.9119 20.9193 48.9412 22.1948 48.9412H49.7059C50.9707 48.9412 52 47.9119 52 46.6471V17.5883C52 17.5531 51.9847 17.5225 51.9801 17.4889C51.9758 17.4568 51.9692 17.4251 51.9602 17.394C51.9302 17.2637 51.8658 17.1438 51.7736 17.0469L41.0693 6.3425C40.9488 6.22696 40.7933 6.15485 40.6273 6.13756C40.5951 6.13297 40.5646 6.11768 40.5294 6.11768H32.8823C32.6795 6.11768 32.485 6.19824 32.3416 6.34165C32.1982 6.48506 32.1176 6.67957 32.1176 6.88238C32.1176 7.08519 32.1982 7.2797 32.3416 7.42311C32.485 7.56652 32.6795 7.64709 32.8823 7.64709ZM42.0588 16.8236C41.856 16.8236 41.6615 16.743 41.5181 16.5996C41.3747 16.4562 41.2941 16.2617 41.2941 16.0589V8.72838L49.3893 16.8236H42.0588Z" fill="currentColor"/>
<path d="M35.941 24.4706H45.1174C45.3203 24.4706 45.5148 24.39 45.6582 24.2466C45.8016 24.1032 45.8822 23.9087 45.8822 23.7059C45.8822 23.5031 45.8016 23.3085 45.6582 23.1651C45.5148 23.0217 45.3203 22.9412 45.1174 22.9412H35.941C35.7382 22.9412 35.5437 23.0217 35.4002 23.1651C35.2568 23.3085 35.1763 23.5031 35.1763 23.7059C35.1763 23.9087 35.2568 24.1032 35.4002 24.2466C35.5437 24.39 35.7382 24.4706 35.941 24.4706ZM35.941 30.5882H45.1174C45.3203 30.5882 45.5148 30.5077 45.6582 30.3642C45.8016 30.2208 45.8822 30.0263 45.8822 29.8235C45.8822 29.6207 45.8016 29.4262 45.6582 29.2828C45.5148 29.1394 45.3203 29.0588 45.1174 29.0588H35.941C35.7382 29.0588 35.5437 29.1394 35.4002 29.2828C35.2568 29.4262 35.1763 29.6207 35.1763 29.8235C35.1763 30.0263 35.2568 30.2208 35.4002 30.3642C35.5437 30.5077 35.7382 30.5882 35.941 30.5882ZM35.941 36.7059H45.1174C45.3203 36.7059 45.5148 36.6253 45.6582 36.4819C45.8016 36.3385 45.8822 36.144 45.8822 35.9412C45.8822 35.7383 45.8016 35.5438 45.6582 35.4004C45.5148 35.257 45.3203 35.1765 45.1174 35.1765H35.941C35.7382 35.1765 35.5437 35.257 35.4002 35.4004C35.2568 35.5438 35.1763 35.7383 35.1763 35.9412C35.1763 36.144 35.2568 36.3385 35.4002 36.4819C35.5437 36.6253 35.7382 36.7059 35.941 36.7059ZM35.941 42.8235H45.1174C45.3203 42.8235 45.5148 42.7429 45.6582 42.5995C45.8016 42.4561 45.8822 42.2616 45.8822 42.0588C45.8822 41.856 45.8016 41.6615 45.6582 41.5181C45.5148 41.3747 45.3203 41.2941 45.1174 41.2941H35.941C35.7382 41.2941 35.5437 41.3747 35.4002 41.5181C35.2568 41.6615 35.1763 41.856 35.1763 42.0588C35.1763 42.2616 35.2568 42.4561 35.4002 42.5995C35.5437 42.7429 35.7382 42.8235 35.941 42.8235Z" fill="currentColor"/>
</g>
<defs>
<clipPath id="clip0_33_328">
<rect width="1em" height="1em" fill="currentColor"/>
</clipPath>
</defs>
</svg>
)
}

@ -0,0 +1,13 @@
import React from 'react'
const Shield = () => {
return (
<svg width="1em" height="1em" viewBox="0 0 52 52" fill="none" xmlns="http://www.w3.org/2000/svg">
<g id="material-symbols:shield-outline">
<path id="Vector" d="M26.0003 47.6667C20.9809 46.4028 16.8368 43.5226 13.568 39.026C10.2992 34.5295 8.66555 29.5375 8.66699 24.05V10.8334L26.0003 4.33337L43.3337 10.8334V24.05C43.3337 29.5389 41.6993 34.5317 38.4305 39.0282C35.1617 43.5248 31.0183 46.4043 26.0003 47.6667ZM26.0003 43.1167C29.7559 41.925 32.8614 39.5417 35.317 35.9667C37.7725 32.3917 39.0003 28.4195 39.0003 24.05V13.8125L26.0003 8.93754L13.0003 13.8125V24.05C13.0003 28.4195 14.2281 32.3917 16.6837 35.9667C19.1392 39.5417 22.2448 41.925 26.0003 43.1167Z" fill="currentColor"/>
</g>
</svg>
)
}
export default Shield;

@ -3,14 +3,9 @@ import React from 'react'
const TimeFill = () => {
return (
<svg width="1em" height="1em" viewBox="0 0 72 72" fill="currentColor" xmlns="http://www.w3.org/2000/svg">
<g clipPath="url(#clip0_15_10171)">
<g>
<path d="M36 6C52.569 6 66 19.431 66 36C66 52.569 52.569 66 36 66C19.431 66 6 52.569 6 36C6 19.431 19.431 6 36 6ZM36 18C35.2044 18 34.4413 18.3161 33.8787 18.8787C33.3161 19.4413 33 20.2044 33 21V36C33.0002 36.7956 33.3164 37.5585 33.879 38.121L42.879 47.121C43.4448 47.6675 44.2026 47.9699 44.9892 47.963C45.7758 47.9562 46.5282 47.6407 47.0845 47.0845C47.6407 46.5282 47.9562 45.7758 47.963 44.9892C47.9699 44.2026 47.6675 43.4448 47.121 42.879L39 34.758V21C39 20.2044 38.6839 19.4413 38.1213 18.8787C37.5587 18.3161 36.7957 18 36 18Z"/>
</g>
<defs>
<clipPath id="clip0_15_10171">
<rect width="1em" height="1em" fill="currentColor"/>
</clipPath>
</defs>
</svg>
)
}

@ -1,5 +1 @@
<svg width="72" height="72" viewBox="0 0 72 72" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M66 36C66 19.431 52.569 6 36 6C19.431 6 6 19.431 6 36C6 52.569 19.431 66 36 66" stroke="#1E293B" stroke-width="3.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M38.9999 6.1499C38.9999 6.1499 47.9999 17.9999 47.9999 35.9999M32.9999 65.8499C32.9999 65.8499 23.9999 53.9999 23.9999 35.9999C23.9999 17.9999 32.9999 6.1499 32.9999 6.1499M7.88989 46.4999H35.9999M7.88989 25.4999H64.1099" stroke="#1E293B" stroke-width="3.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M65.6371 53.7509C67.1191 54.6629 67.0261 56.8799 65.5021 57.0539L57.8011 57.9269L54.3481 64.8629C53.6641 66.2399 51.5491 65.5649 51.1981 63.8609L47.4331 45.5129C47.1361 44.0729 48.4321 43.1669 49.6831 43.9379L65.6371 53.7509Z" stroke="#1E293B" stroke-width="3.5"/>
</svg>
<svg stroke="currentColor" fill="black" stroke-width="0" viewBox="0 0 16 16" height="20px" width="20px" xmlns="http://www.w3.org/2000/svg"><path d="M10.97 4.97a.75.75 0 0 1 1.07 1.05l-3.99 4.99a.75.75 0 0 1-1.08.02L4.324 8.384a.75.75 0 1 1 1.06-1.06l2.094 2.093 3.473-4.425a.267.267 0 0 1 .02-.022z"></path></svg>

Before

Width:  |  Height:  |  Size: 867 B

After

Width:  |  Height:  |  Size: 313 B

@ -0,0 +1,5 @@
<svg width="52" height="52" viewBox="0 0 52 52" fill="none" xmlns="http://www.w3.org/2000/svg">
<g id="material-symbols:shield-outline">
<path id="Vector" d="M26.0003 47.6667C20.9809 46.4028 16.8368 43.5226 13.568 39.026C10.2992 34.5295 8.66555 29.5375 8.66699 24.05V10.8334L26.0003 4.33337L43.3337 10.8334V24.05C43.3337 29.5389 41.6993 34.5317 38.4305 39.0282C35.1617 43.5248 31.0183 46.4043 26.0003 47.6667ZM26.0003 43.1167C29.7559 41.925 32.8614 39.5417 35.317 35.9667C37.7725 32.3917 39.0003 28.4195 39.0003 24.05V13.8125L26.0003 8.93754L13.0003 13.8125V24.05C13.0003 28.4195 14.2281 32.3917 16.6837 35.9667C19.1392 39.5417 22.2448 41.925 26.0003 43.1167Z" fill="white"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 688 B

@ -0,0 +1 @@
<svg stroke="currentColor" fill="black" stroke-width="0" viewBox="0 0 16 16" height="20px" width="20px" xmlns="http://www.w3.org/2000/svg"><path d="M10.97 4.97a.75.75 0 0 1 1.07 1.05l-3.99 4.99a.75.75 0 0 1-1.08.02L4.324 8.384a.75.75 0 1 1 1.06-1.06l2.094 2.093 3.473-4.425a.267.267 0 0 1 .02-.022z"></path></svg>

After

Width:  |  Height:  |  Size: 313 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 203 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 122 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 122 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 181 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 136 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 591 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 347 KiB

@ -0,0 +1,25 @@
import React from "react"
import Layout from "../components/layout"
import Seo from "../components/seo"
import Hero from "../components/About/Hero"
import Team from "../components/About/Team/Team"
import Documents from "../components/About/Documents"
import RichText from "../components/About/RichText"
import Contacts from "../components/Contacts"
const AboutPage = () => {
return (
<Layout>
<Hero></Hero>
<Team></Team>
<Documents></Documents>
<RichText></RichText>
<Contacts></Contacts>
</Layout>
)
}
export const Head = () => <Seo title="О нас" />
export default AboutPage

@ -0,0 +1,19 @@
import React from "react"
import Layout from "../components/layout"
import Seo from "../components/seo"
import Calculator from "../components/Calculator/Calculator"
import Contacts from "../components/Contacts"
const CalculatorPage = () => {
return (
<Layout>
<Calculator></Calculator>
<Contacts></Contacts>
</Layout>
)
}
export const Head = () => <Seo title="О нас" />
export default CalculatorPage

@ -0,0 +1,19 @@
import React from "react"
import Layout from "../components/layout"
import Seo from "../components/seo"
import Hero from "../components/Contacts/Hero"
import Contacts from "../components/Contacts"
const ContactsPage = () => {
return (
<Layout>
<Hero></Hero>
<Contacts></Contacts>
</Layout>
)
}
export const Head = () => <Seo title="О нас" />
export default ContactsPage

@ -6,7 +6,6 @@ import Hero from "../components/Services/Hero"
import PhysLic from "../components/Services/PhysLic"
import Workers from "../components/Services/Workers"
import UrLic from "../components/Services/UrLic"
import Contacts from "../components/Contacts"
const ServicesPage = () => {
@ -16,11 +15,10 @@ const ServicesPage = () => {
<PhysLic></PhysLic>
<Workers></Workers>
<UrLic></UrLic>
<Contacts></Contacts>
</Layout>
)
}
export const Head = () => <Seo title="Главная" />
export const Head = () => <Seo title="Услуги" />
export default ServicesPage

@ -0,0 +1 @@
<svg stroke="currentColor" fill="black" stroke-width="0" viewBox="0 0 16 16" height="20px" width="20px" xmlns="http://www.w3.org/2000/svg"><path d="M10.97 4.97a.75.75 0 0 1 1.07 1.05l-3.99 4.99a.75.75 0 0 1-1.08.02L4.324 8.384a.75.75 0 1 1 1.06-1.06l2.094 2.093 3.473-4.425a.267.267 0 0 1 .02-.022z"></path></svg>

After

Width:  |  Height:  |  Size: 313 B

@ -1,14 +1,21 @@
/** @type {import('tailwindcss').Config} */
module.exports = {
content: [
`./src/pages/**/*.{js,jsx,ts,tsx}`,
`./src/components/**/*.{js,jsx,ts,tsx}`,
"./src/pages/**/*.{js,jsx,ts,tsx}",
"./src/components/**/*.{js,jsx,ts,tsx}",
],
theme: {
extend: {},
extend: {
content: {
'check': 'url("/icon.svg")',
},
},
container: {
screens: {
'2xl': '1360px',
md: '768px',
lg: '1024px',
xl: '1280px',
'2xl': '1367px',
},
},
},

Loading…
Cancel
Save