Elementor #327

import React, { useState } from „react”;
import { motion } from „framer-motion”;
import {
ArrowRight,
Mail,
Phone,
Calendar,
Heart,
Dumbbell,
Wallet,
Sparkles,
CheckCircle2,
Globe,
} from „lucide-react”;
// ============================================================
// LANDING PAGE – Dariusz Motywuje
// Jednoplikowa aplikacja React z TailwindCSS + Framer Motion.
// Gotowa do wklejenia w dowolny projekt jako komponent strony.
// Sekcje: Hero, Filary (Zdrowie/Wolność/ Rozwój), O mnie, Newsletter,
// Konsultacja, Kursy, Zespół, FAQ-mini, Stopka.
// Miejsca na integracje: MailerLite (newsletter) i kalendarz (konsultacje).
// ============================================================
// Prosty komponent Button (Tailwind – warianty)
const Btn = ({ children, onClick, href, variant = „primary”, icon: Icon }) => {
const base =
„inline-flex items-center gap-2 rounded-2xl px-5 py-3 text-sm font-semibold transition shadow-sm hover:shadow-md focus:outline-none focus:ring-2 focus:ring-offset-2”;
const styles = {
primary:
„bg-gradient-to-r from-indigo-600 to-violet-600 text-white focus:ring-indigo-500”,
ghost:
„bg-white/10 text-white backdrop-blur border border-white/20 hover:bg-white/20 focus:ring-white”,
outline:
„border border-slate-300 text-slate-800 hover:bg-slate-50 focus:ring-slate-400”,
subtle:
„bg-slate-900 text-white hover:bg-slate-800 focus:ring-slate-700”,
};
const className = `${base} ${styles[variant] || styles.primary}`;
if (href) {
return (

{Icon && } {children}

);
}
return (

);
};
const Section = ({ id, eyebrow, title, subtitle, children }) => (

{eyebrow && (

{eyebrow}

)}
{title && (

{title}

)}
{subtitle && (

{subtitle}

)}
{children}

);
const Card = ({ icon: Icon, title, children, color = „indigo” }) => (
{Icon && }

{title}

{children}

);
export default function LandingPage() {
const [newsletter, setNewsletter] = useState({ name: „”, email: „” });
const [consult, setConsult] = useState({ name: „”, email: „”, phone: „”, note: „” });
const onNewsletter = (e) => {
e.preventDefault();
// 👉 Integracja: tu podepnij MailerLite (HTTP POST / embed script)
// Przykład (pseudokod):
// fetch(„https://api.mailerlite.com/api/subscribers”, { method: „POST”, headers: {…}, body: JSON.stringify(newsletter) })
alert(„Dziekuje! Sprawdz skrzynke – wyslalem pierwsza dawke inspiracji ✉️”);
};
const onConsult = (e) => {
e.preventDefault();
// 👉 Integracja: podepnij tu swój kalendarz (np. Calendly) lub CRM (np. Notion/Sheets)
alert(„Dziekuje! Wroce z terminem 15-min konsultacji 📞”);
};
return (


{/* NAV */}


DARIUSZ MOTYWUJE

Zapisz sie

{/* HERO */}


🔥 Twoje szczesliwe zycie zaczyna sie od jednej decyzji!

Z Bogiem naprawde mozesz zyc w obfitosci – zdrowie, wolnosc i sens. To jest Twoj moment.

Zapisz sie na newsletter
Umow 15-min rozmowe

Bez presji, bez przekonywania. Po prostu wsparcie na drodze do pelni zycia (J 10:10).




    {[
    „Zero spamu – tylko wartosc i prawda”,
    „Konsultacja bez presji, konkrety w 15 minut”,
    „Kursy i narzedzia, ktore dzialaja w praktyce”,
    ].map((t, i) => (


  • {t}
  • ))}


{/* FILARY */}



🧠 Skupienie, produktywnosc, piekna sylwetka, energia i witalnosc kazdego dnia – z mysla o dlugowiecznosci w pelni sil.


💼 Wyjscie z dlugow, dochody powtarzalne i odzyskany czas dla rodziny – by byc naprawde wolnym czlowiekiem, jakim stworzyl Cie Bog.


🕊 Zycie pelne sensu, pasji i marzen – idziesz za tym, co Bog wlozyl w Twoje serce, zamiast zyc w kompromisie.


{/* O MNIE */}

😔 Dlugi, brak czasu dla rodziny, chore dziecko, gasnaca nadzieja.

🙏 Zaufalem Bogu. Wszedlem w SoftMarketing. Zmienilo sie WSZYSTKO.

🎯 Teraz ucze praktyki: mala decyzja dzis → duza zmiana jutro.

Pogadajmy 15 minut

„Ja przyszedlem, aby owce mialy zycie — i to zycie w obfitosci.”
— Ew. Jana 10:10


{/* NEWSLETTER */}

setNewsletter({ …newsletter, name: e.target.value })}
/>
setNewsletter({ …newsletter, email: e.target.value })}
/>
Dolaczam do newslettera

👉 Integracja: wstaw tu osadzony formularz MailerLite lub podmien endpoint w onNewsletter.


{/* KONSULTACJA */}

setConsult({ …consult, name: e.target.value })}
/>
setConsult({ …consult, email: e.target.value })}
/>
setConsult({ …consult, phone: e.target.value })}
/>