import React from "react";
import { CalendarDays, Users, HeartHandshake, BookOpen, Mail, Menu, Search, MapPin, ArrowRight, Camera } from "lucide-react";
import { motion } from "framer-motion";

export default function TreffpunktFeldkirchenRedesign() {
  const nav = ["Startseite", "Veranstaltungen", "Vereine & Gruppen", "Menschen & Geschichten", "Mitmachen"];

  const cards = [
    {
      icon: CalendarDays,
      title: "Veranstaltungen",
      text: "Termine, Feste, Vereinsleben und besondere Ereignisse in Neuwied-Feldkirchen.",
      cta: "Termine entdecken",
    },
    {
      icon: Users,
      title: "Vereine & Gruppen",
      text: "Alles über Initiativen, Ehrenamt, Sport, Kultur und Gemeinschaft vor Ort.",
      cta: "Vereine ansehen",
    },
    {
      icon: BookOpen,
      title: "Menschen & Geschichten",
      text: "Persönliche Einblicke, Dorfgeschichte, Interviews und Erinnerungen.",
      cta: "Geschichten lesen",
    },
    {
      icon: HeartHandshake,
      title: "Mitmachen",
      text: "Termine melden, Beiträge einreichen oder Treffpunkt Feldkirchen unterstützen.",
      cta: "Jetzt mitmachen",
    },
  ];

  const posts = [
    { tag: "Dorfleben", title: "125 Jahre Bürgerverein Gönnersdorf", text: "Tradition, Gemeinschaft und gelebtes Brauchtum in Feldkirchen.", date: "14. Mai 2026" },
    { tag: "Sport", title: "Boule in Feldkirchen entdecken", text: "Spiel, Spaß und Gemeinschaft auf dem Bouleplatz des SV Feldkirchen.", date: "12. Mai 2026" },
    { tag: "Geschichte", title: "Feldkirchen früher und heute", text: "Erinnerungen, Bilder und kleine Geschichten aus unserem Ort.", date: "10. Mai 2026" },
  ];

  const events = [
    { day: "25", month: "MAI", title: "Pfingstmarkt Feldkirchen", meta: "11:00 – 18:00 Uhr · Ortsmitte" },
    { day: "01", month: "JUN", title: "Boule-Turnier", meta: "14:00 Uhr · Sportplatz Feldkirchen" },
    { day: "09", month: "JUN", title: "Sommerfest der AWO", meta: "15:00 Uhr · AWO Treff" },
  ];

  return (
    <div className="min-h-screen bg-[#f7fbf8] text-slate-900">
      <header className="sticky top-0 z-50 border-b border-emerald-100 bg-white/85 backdrop-blur-xl">
        <div className="mx-auto flex max-w-7xl items-center justify-between px-5 py-4 lg:px-8">
          <div className="flex items-center gap-3">
            <div className="flex h-12 w-12 items-center justify-center rounded-2xl bg-emerald-50 text-emerald-800 shadow-sm">
              <MapPin size={26} />
            </div>
            <div>
              <div className="text-xl font-bold leading-tight tracking-tight">Treffpunkt Feldkirchen</div>
              <div className="text-sm text-emerald-800">Neuwied-Feldkirchen</div>
            </div>
          </div>

          <nav className="hidden items-center gap-7 text-sm font-semibold lg:flex">
            {nav.map((item) => (
              <a key={item} href="#" className="transition hover:text-emerald-700">
                {item}
              </a>
            ))}
          </nav>

          <div className="hidden items-center gap-3 lg:flex">
            <button className="rounded-full p-3 transition hover:bg-emerald-50" aria-label="Suche">
              <Search size={20} />
            </button>
            <button className="rounded-full bg-emerald-700 px-5 py-3 text-sm font-semibold text-white shadow-lg shadow-emerald-900/10 transition hover:bg-emerald-800">
              Termin melden
            </button>
          </div>

          <button className="rounded-xl p-3 lg:hidden" aria-label="Menü">
            <Menu size={26} />
          </button>
        </div>
      </header>

      <main>
        <section className="relative overflow-hidden">
          <div className="absolute inset-0 bg-[radial-gradient(circle_at_20%_20%,rgba(16,185,129,.18),transparent_35%),radial-gradient(circle_at_80%_10%,rgba(59,130,246,.12),transparent_30%),linear-gradient(135deg,#f7fbf8,#ffffff)]" />
          <div className="relative mx-auto grid max-w-7xl gap-10 px-5 py-16 lg:grid-cols-[1.05fr_.95fr] lg:px-8 lg:py-24">
            <motion.div initial={{ opacity: 0, y: 16 }} animate={{ opacity: 1, y: 0 }} transition={{ duration: 0.5 }} className="flex flex-col justify-center">
              <div className="mb-5 inline-flex w-fit items-center gap-2 rounded-full border border-emerald-100 bg-white/80 px-4 py-2 text-sm font-semibold text-emerald-800 shadow-sm">
                <HeartHandshake size={17} /> Für unser Dorf. Für unsere Gemeinschaft.
              </div>
              <h1 className="max-w-3xl text-4xl font-extrabold tracking-tight text-slate-950 sm:text-5xl lg:text-6xl">
                Feldkirchen. Unser Ort. <span className="text-emerald-700">Unsere Geschichten.</span>
              </h1>
              <p className="mt-6 max-w-2xl text-lg leading-8 text-slate-700">
                Treffpunkt Feldkirchen bündelt Nachrichten, Veranstaltungen, Vereinsleben und persönliche Geschichten aus Neuwied-Feldkirchen – übersichtlich, lokal und mobilfreundlich.
              </p>
              <div className="mt-8 flex flex-col gap-3 sm:flex-row">
                <button className="inline-flex items-center justify-center gap-2 rounded-2xl bg-emerald-700 px-6 py-4 font-semibold text-white shadow-xl shadow-emerald-900/15 transition hover:bg-emerald-800">
                  Veranstaltungen entdecken <ArrowRight size={18} />
                </button>
                <button className="inline-flex items-center justify-center gap-2 rounded-2xl border border-emerald-100 bg-white px-6 py-4 font-semibold text-emerald-800 shadow-sm transition hover:bg-emerald-50">
                  Beitrag einreichen
                </button>
              </div>
            </motion.div>

            <motion.div initial={{ opacity: 0, scale: 0.97 }} animate={{ opacity: 1, scale: 1 }} transition={{ duration: 0.55 }} className="relative">
              <div className="absolute -left-8 top-10 h-28 w-28 rounded-full bg-emerald-200/40 blur-2xl" />
              <div className="absolute -right-8 bottom-10 h-36 w-36 rounded-full bg-sky-200/40 blur-2xl" />
              <div className="relative overflow-hidden rounded-[2rem] border border-white bg-white p-3 shadow-2xl shadow-emerald-900/10">
                <div className="h-[420px] rounded-[1.5rem] bg-[linear-gradient(120deg,rgba(4,120,87,.18),rgba(255,255,255,.15)),url('https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&fit=crop&w=1400&q=80')] bg-cover bg-center" />
                <div className="absolute bottom-8 left-8 right-8 rounded-3xl bg-white/88 p-6 shadow-xl backdrop-blur">
                  <div className="text-sm font-semibold text-emerald-800">Lokales Portal</div>
                  <div className="mt-1 text-2xl font-bold">Alles Wichtige aus Feldkirchen an einem Ort.</div>
                </div>
              </div>
            </motion.div>
          </div>
        </section>

        <section className="mx-auto max-w-7xl px-5 py-10 lg:px-8">
          <div className="grid gap-5 sm:grid-cols-2 lg:grid-cols-4">
            {cards.map((card) => {
              const Icon = card.icon;
              return (
                <article key={card.title} className="rounded-3xl border border-emerald-100 bg-white p-6 shadow-sm transition hover:-translate-y-1 hover:shadow-xl hover:shadow-emerald-900/10">
                  <div className="mb-5 flex h-14 w-14 items-center justify-center rounded-2xl bg-emerald-50 text-emerald-800">
                    <Icon size={29} />
                  </div>
                  <h2 className="text-xl font-bold">{card.title}</h2>
                  <p className="mt-3 min-h-20 leading-7 text-slate-650">{card.text}</p>
                  <a href="#" className="mt-5 inline-flex items-center gap-2 font-semibold text-emerald-800">
                    {card.cta} <ArrowRight size={17} />
                  </a>
                </article>
              );
            })}
          </div>
        </section>

        <section className="mx-auto grid max-w-7xl gap-6 px-5 py-8 lg:grid-cols-[1.2fr_.8fr] lg:px-8">
          <div className="rounded-[2rem] border border-emerald-100 bg-white p-6 shadow-sm">
            <div className="mb-6 flex items-center justify-between gap-4">
              <div>
                <h2 className="text-2xl font-extrabold">Aktuelles aus Feldkirchen</h2>
                <div className="mt-2 h-1 w-16 rounded-full bg-emerald-700" />
              </div>
              <a className="hidden font-semibold text-emerald-800 sm:inline-flex" href="#">Alle Beiträge</a>
            </div>
            <div className="grid gap-5">
              {posts.map((post) => (
                <article key={post.title} className="grid gap-4 rounded-3xl border border-slate-100 p-4 transition hover:bg-emerald-50/40 sm:grid-cols-[160px_1fr]">
                  <div className="h-36 rounded-2xl bg-[url('https://images.unsplash.com/photo-1515150144380-bca9f1650ed9?auto=format&fit=crop&w=700&q=80')] bg-cover bg-center" />
                  <div>
                    <div className="flex flex-wrap items-center gap-3 text-sm">
                      <span className="rounded-full bg-emerald-50 px-3 py-1 font-semibold text-emerald-800">{post.tag}</span>
                      <span className="text-slate-500">{post.date}</span>
                    </div>
                    <h3 className="mt-3 text-xl font-bold">{post.title}</h3>
                    <p className="mt-2 leading-7 text-slate-700">{post.text}</p>
                    <a className="mt-3 inline-flex items-center gap-2 font-semibold text-emerald-800" href="#">Weiterlesen <ArrowRight size={16} /></a>
                  </div>
                </article>
              ))}
            </div>
          </div>

          <aside className="rounded-[2rem] border border-emerald-100 bg-white p-6 shadow-sm">
            <h2 className="text-2xl font-extrabold">Nächste Veranstaltungen</h2>
            <div className="mt-2 h-1 w-16 rounded-full bg-emerald-700" />
            <div className="mt-6 space-y-4">
              {events.map((event) => (
                <div key={event.title} className="flex gap-4 rounded-3xl border border-slate-100 p-4 transition hover:bg-emerald-50/40">
                  <div className="flex h-16 w-16 shrink-0 flex-col items-center justify-center rounded-2xl bg-emerald-50 text-emerald-800">
                    <div className="text-2xl font-extrabold leading-none">{event.day}</div>
                    <div className="text-xs font-bold">{event.month}</div>
                  </div>
                  <div>
                    <h3 className="font-bold">{event.title}</h3>
                    <p className="mt-1 text-sm leading-6 text-slate-600">{event.meta}</p>
                  </div>
                </div>
              ))}
            </div>
            <button className="mt-6 w-full rounded-2xl bg-emerald-700 px-5 py-4 font-semibold text-white transition hover:bg-emerald-800">Alle Termine ansehen</button>
          </aside>
        </section>

        <section className="mx-auto max-w-7xl px-5 py-10 lg:px-8">
          <div className="grid overflow-hidden rounded-[2rem] border border-emerald-100 bg-white shadow-sm lg:grid-cols-3">
            <div className="min-h-64 bg-[url('https://images.unsplash.com/photo-1529156069898-49953e39b3ac?auto=format&fit=crop&w=900&q=80')] bg-cover bg-center" />
            <div className="flex flex-col items-center justify-center p-8 text-center lg:col-span-1">
              <HeartHandshake className="text-emerald-800" size={42} />
              <h2 className="mt-4 text-2xl font-extrabold">Gemeinsam für unser Dorf</h2>
              <p className="mt-3 leading-7 text-slate-700">Treffpunkt Feldkirchen lebt von Menschen, die Termine, Geschichten, Fotos und Ideen beitragen.</p>
              <button className="mt-6 rounded-2xl bg-emerald-700 px-6 py-4 font-semibold text-white transition hover:bg-emerald-800">Mitmachen & unterstützen</button>
            </div>
            <div className="min-h-64 bg-[url('https://images.unsplash.com/photo-1464822759023-fed622ff2c3b?auto=format&fit=crop&w=900&q=80')] bg-cover bg-center" />
          </div>
        </section>

        <section className="mx-auto max-w-7xl px-5 py-10 lg:px-8">
          <div className="rounded-[2rem] bg-emerald-50 p-6 lg:p-8">
            <div className="grid items-center gap-6 lg:grid-cols-[1fr_1.2fr]">
              <div>
                <div className="flex items-center gap-3 text-emerald-900">
                  <Mail size={28} />
                  <h2 className="text-2xl font-extrabold">Nichts mehr verpassen</h2>
                </div>
                <p className="mt-3 leading-7 text-slate-700">Newsletter für Termine, Dorfgeschichten und neue Beiträge aus Neuwied-Feldkirchen.</p>
              </div>
              <form className="grid gap-3 sm:grid-cols-[1fr_auto]">
                <input className="rounded-2xl border border-emerald-100 bg-white px-5 py-4 outline-none ring-emerald-200 focus:ring-4" placeholder="E-Mail-Adresse eingeben" />
                <button className="rounded-2xl bg-emerald-700 px-7 py-4 font-semibold text-white transition hover:bg-emerald-800">Anmelden</button>
              </form>
            </div>
          </div>
        </section>

        <section className="mx-auto max-w-7xl px-5 py-10 lg:px-8">
          <div className="mb-6 flex items-end justify-between">
            <div>
              <div className="flex items-center gap-3 text-emerald-800"><Camera size={26} /><span className="font-bold">Galerie</span></div>
              <h2 className="mt-2 text-3xl font-extrabold">Feldkirchen in Bildern</h2>
            </div>
            <a className="hidden font-semibold text-emerald-800 sm:inline-flex" href="#">Zur Galerie</a>
          </div>
          <div className="grid gap-4 sm:grid-cols-2 lg:grid-cols-4">
            {[1,2,3,4].map((i) => (
              <div key={i} className="h-48 rounded-3xl bg-[url('https://images.unsplash.com/photo-1447752875215-b2761acb3c5d?auto=format&fit=crop&w=700&q=80')] bg-cover bg-center shadow-sm" />
            ))}
          </div>
        </section>
      </main>

      <footer className="mt-8 bg-emerald-950 text-white">
        <div className="mx-auto grid max-w-7xl gap-8 px-5 py-12 lg:grid-cols-4 lg:px-8">
          <div className="lg:col-span-2">
            <div className="text-2xl font-extrabold">Treffpunkt Feldkirchen</div>
            <p className="mt-3 max-w-xl leading-7 text-emerald-50/80">Das lokale Informationsportal für Neuwied-Feldkirchen – unabhängig, ehrenamtlich und überparteilich.</p>
          </div>
          <div>
            <h3 className="font-bold">Schnellzugriff</h3>
            <div className="mt-4 grid gap-2 text-emerald-50/80">
              {nav.slice(1).map((item) => <a key={item} href="#" className="hover:text-white">{item}</a>)}
            </div>
          </div>
          <div>
            <h3 className="font-bold">Kontakt</h3>
            <p className="mt-4 text-emerald-50/80">Termine, Hinweise und Beiträge gerne einreichen.</p>
            <a className="mt-4 inline-flex font-semibold text-white" href="#">Kontakt aufnehmen</a>
          </div>
        </div>
        <div className="border-t border-white/10 px-5 py-5 text-center text-sm text-emerald-50/70">© 2026 Treffpunkt Feldkirchen · Impressum · Datenschutz</div>
      </footer>
    </div>
  );
}
import React from „react“; import { CalendarDays, Users, HeartHandshake, BookOpen, Mail, Menu, Search, MapPin, ArrowRight, Camera } from „lucide-react“; import { motion } from „framer-motion“; export default function TreffpunktFeldkirchenRedesign() { const nav = [„Startseite“, „Veranstaltungen“, „Vereine & Gruppen“, „Menschen & Geschichten“, „Mitmachen“]; const cards = [ { icon: CalendarDays, title: „Veranstaltungen“, text: „Termine, Feste, Vereinsleben und besondere Ereignisse in Neuwied-Feldkirchen.“, cta: „Termine entdecken“, }, { icon: Users, title: „Vereine & Gruppen“, text: „Alles über Initiativen, Ehrenamt, Sport, Kultur und Gemeinschaft vor Ort.“, cta: „Vereine ansehen“, }, { icon: BookOpen, title: „Menschen & Geschichten“, text: „Persönliche Einblicke, Dorfgeschichte, Interviews und Erinnerungen.“, cta: „Geschichten lesen“, }, { icon: HeartHandshake, title: „Mitmachen“, text: „Termine melden, Beiträge einreichen oder Treffpunkt Feldkirchen unterstützen.“, cta: „Jetzt mitmachen“, }, ]; const posts = [ { tag: „Dorfleben“, title: „125 Jahre Bürgerverein Gönnersdorf“, text: „Tradition, Gemeinschaft und gelebtes Brauchtum in Feldkirchen.“, date: „14. Mai 2026“ }, { tag: „Sport“, title: „Boule in Feldkirchen entdecken“, text: „Spiel, Spaß und Gemeinschaft auf dem Bouleplatz des SV Feldkirchen.“, date: „12. Mai 2026“ }, { tag: „Geschichte“, title: „Feldkirchen früher und heute“, text: „Erinnerungen, Bilder und kleine Geschichten aus unserem Ort.“, date: „10. Mai 2026“ }, ]; const events = [ { day: „25“, month: „MAI“, title: „Pfingstmarkt Feldkirchen“, meta: „11:00 – 18:00 Uhr · Ortsmitte“ }, { day: „01“, month: „JUN“, title: „Boule-Turnier“, meta: „14:00 Uhr · Sportplatz Feldkirchen“ }, { day: „09“, month: „JUN“, title: „Sommerfest der AWO“, meta: „15:00 Uhr · AWO Treff“ }, ]; return (
Treffpunkt Feldkirchen
Neuwied-Feldkirchen
Für unser Dorf. Für unsere Gemeinschaft.

Feldkirchen. Unser Ort. Unsere Geschichten.

Treffpunkt Feldkirchen bündelt Nachrichten, Veranstaltungen, Vereinsleben und persönliche Geschichten aus Neuwied-Feldkirchen – übersichtlich, lokal und mobilfreundlich.

Lokales Portal
Alles Wichtige aus Feldkirchen an einem Ort.
{cards.map((card) => { const Icon = card.icon; return ( ); })}

Aktuelles aus Feldkirchen

Alle Beiträge
{posts.map((post) => (
{post.tag} {post.date}

{post.title}

{post.text}

Weiterlesen
))}

Gemeinsam für unser Dorf

Treffpunkt Feldkirchen lebt von Menschen, die Termine, Geschichten, Fotos und Ideen beitragen.

Nichts mehr verpassen

Newsletter für Termine, Dorfgeschichten und neue Beiträge aus Neuwied-Feldkirchen.

Galerie

Feldkirchen in Bildern

Zur Galerie
{[1,2,3,4].map((i) => (
))}
Treffpunkt Feldkirchen

Das lokale Informationsportal für Neuwied-Feldkirchen – unabhängig, ehrenamtlich und überparteilich.

Schnellzugriff

{nav.slice(1).map((item) => {item})}

Kontakt

Termine, Hinweise und Beiträge gerne einreichen.

Kontakt aufnehmen
© 2026 Treffpunkt Feldkirchen · Impressum · Datenschutz
); }