/* global React, Container, Section, Eyebrow, SectionHead, Button, Icon, Hero,
   ServiceGrid, MetricStrip, LegalTechFlow, ModelsGrid, AboutTeaser,
   ContactForm, sitePath */

const PAGE_COPY = {
  pl: {
    home: {
      forWhom: {
        eyebrow: "Dla kogo pracuję",
        title: "Obsługa prawna dla firm, które potrzebują prawnika rozumiejącego biznes, proces i skalę działania",
        lead: "Trzy ścieżki usługowe — z bezpośrednim nadzorem adwokata i tym samym standardem operacyjnym.",
      },
      work: {
        eyebrow: "Jak pracuję",
        title: "Bezpośredni nadzór adwokata. Procesowa precyzja. Technologia tam, gdzie zwiększa bezpieczeństwo i przewidywalność.",
        p1: "Pracuję bezpośrednio z klientem — zarówno przy ustalaniu strategii, jak i przy kluczowych decyzjach procesowych lub transakcyjnych. Nie przekazuję odpowiedzialności za sprawę osobom, których klient nigdy nie poznał.",
        p2: "W sprawach wymagających skali wykorzystuję rozwiązania IT: automatyzację dokumentów, integracje API, analizę danych i raportowanie. Technologia wspiera przepustowość oraz kontrolę jakości, ale decyzje merytoryczne pozostają po stronie prawnika.",
      },
      metrics: {
        eyebrow: "Dowody kompetencji",
        title: "Doświadczenie, które można przełożyć na organizację pracy po stronie klienta",
      },
      models: {
        eyebrow: "Modele współpracy",
        title: "Model dopasowany do charakteru sprawy",
        lead: "Nie sprzedaję pakietów. Strukturę współpracy dobieramy do problemu, wolumenu i tempa decyzji.",
      },
      contact: {
        eyebrow: "Kontakt",
        title: "Porozmawiajmy o modelu obsługi dla Państwa firmy",
        lead: "Jeżeli Państwa spółka prowadzi inwestycję deweloperską, komercjalizuje powierzchnie, obsługuje portfel wierzytelności albo potrzebuje kancelarii zdolnej połączyć praktykę procesową z technologią i raportowaniem — zapraszam do kontaktu.",
      },
    },
    breadcrumbsHome: "Strona główna",
    developer: {
      crumb: "Deweloperzy i inwestycje",
      title: "Obsługa prawna deweloperów i inwestycji budowlanych",
      lead: "Wspieram deweloperów, spółdzielnie mieszkaniowe, inwestorów i podmioty budowlane w bieżącej obsłudze prawnej inwestycji — od projektu, przez umowy i relacje z wykonawcami, po spory, rękojmię i obsługę po oddaniu inwestycji.",
      scopeEyebrow: "Zakres obsługi",
      scopeTitle: "Cały cykl inwestycji",
      scopeLead: "Klient otrzymuje prawnika, który zna realia prowadzenia inwestycji — presję terminów, koszt kapitału, ryzyko przestojów i konieczność szybkich decyzji zarządczych.",
      items: ["badanie stanu prawnego nieruchomości", "procedury przygotowawcze - decyzje WZ, PNB, DOŚ", "umowy z projektantami", "umowy z wykonawcami", "bieżące doradztwo w trakcie realizacji inwestycji", "prospekty informacyjne", "umowy deweloperskie", "rękojmia, gwarancja, wady inwestycji", "spory z generalnym wykonawcą", "spory z podwykonawcami", "spory z nabywcami lokali", "negocjacje i ugody"],
      valueEyebrow: "Jaką wartość otrzymuje klient",
      valueTitle: "Prawnik znający nie tylko przepisy, ale także realia procesu budowlanego",
      valueLead: "Spory deweloperskie i budowlane są zwykle wielowątkowe i wymagają decyzji łączących prawo, finanse i harmonogram inwestycji. Pracuję z klientem nad strategią, która redukuje ryzyko eskalacji i pozwala kontynuować inwestycję bez przestojów.",
      cta: "Omów obsługę inwestycji",
    },
    portfolio: {
      crumb: "Portfele wierzytelności",
      title: "Obsługa procesowa portfeli wierzytelności",
      lead: "Obsługuję pakiety spraw obejmujące EPU, postępowania przed sądami powszechnymi i postępowania egzekucyjne. Wykorzystuję integracje z zewnętrznymi systemami, automatyzację przetwarzania danych i dokumentów oraz raportowanie statusów spraw.",
      scopeEyebrow: "Zakres obsługi",
      scopeTitle: "Od danych do egzekucji",
      scopeLead: "Problemem przy dużej liczbie spraw nie jest tylko znajomość prawa, ale jakość danych, kompletność dokumentów, zapewnienie spójnego przepływu pracy - od otrzymania danych od klienta po zakończenie postępowania egzekucyjnego - kontrola terminów i spójność czynności procesowych.",
      stat: "Według wewnętrznych statystyk kancelarii za 2025 r., w segmencie pożyczkowym w ponad 95% spraw skierowanych do Elektronicznego Postępowania Upominawczego wydano nakaz zapłaty. Dane dotyczą wskazanego segmentu i okresu; nie stanowią prognozy wyniku innych spraw.",
      items: ["analiza portfela i dokumentacji", "import danych z systemów klienta", "przygotowanie wzorów pozwów", "Elektroniczne Postępowanie Upominawcze", "przygotowywanie pozwów papierowych", "sprawy kierowane do sądów powszechnych", "uzupełnianie braków formalnych", "środki zaskarżenia", "klauzule wykonalności", "wnioski egzekucyjne", "raportowanie statusów", "obsługa zwrotów, umorzeń i sprzeciwów"],
      billingEyebrow: "Modele rozliczeń",
      billingTitle: "Dopasowanie modelu do wolumenu i charakteru portfela",
      models: [
        { no: "01.", title: "Stały ryczałt miesięczny", desc: "Dla podmiotów z przewidywalnym, powtarzalnym przepływem spraw." },
        { no: "02.", title: "Rozliczenie etapowe", desc: "Wynagrodzenie powiązane z etapami postępowania: EPU, sąd, klauzula, egzekucja." },
        { no: "03.", title: "Model hybrydowy / indywidualny", desc: "Dla dużych portfeli, projektów restrukturyzacyjnych i podmiotów z własnymi KPI operacyjnymi." },
      ],
      cta: "Omów obsługę portfela",
    },
    property: {
      crumb: "Nieruchomości komercyjne",
      title: "Obsługa prawna nieruchomości komercyjnych i najmu",
      lead: "Wspieram właścicieli, zarządców i asset managerów w sprawach najmu komercyjnego — umowy, zabezpieczenia, dochodzenie sądowe roszczeń, wypowiedzenia i spory najemne, z perspektywy biznesowej wynajmującego.",
      forWhomEyebrow: "Dla kogo",
      forWhomTitle: "Perspektywa właściciela, zarządcy i asset managera",
      audiences: ["właściciele biurowców", "właściciele parków handlowych", "właściciele lokali komercyjnych", "zarządcy nieruchomości", "asset managerowie", "działy prawne"],
      scopeEyebrow: "Zakres obsługi",
      scopeTitle: "Umowa, rozliczenia, spór",
      items: ["przygotowanie i analiza umów najmu", "negocjowanie klauzul zabezpieczających wynajmującego", "kaucje, gwarancje bankowe i inne zabezpieczenia", "rozliczenia czynszu i opłat serwisowych", "indeksacja", "zaległości czynszowe", "wypowiedzenia umów najmu", "protokoły zdawczo-odbiorcze", "spory z najemcami", "egzekucja należności"],
      cta: "Omów obsługę nieruchomości",
    },
    legaltech: {
      crumb: "LegalTech",
      title: "LegalTech w praktyce kancelarii",
      lead: "Własne narzędzia IT wspierające obsługę spraw, dokumentów, raportowania i dużych wolumenów postępowań. Technologia jest narzędziem kontroli jakości — decyzje prawne pozostają po stronie adwokata.",
      whyEyebrow: "Po co technologia w kancelarii",
      whyTitle: "Najwięcej ryzyk powstaje nie na sali sądowej, ale wcześniej",
      whyLead: "W danych, dokumentach, terminach, statusach i komunikacji. Dlatego kancelaria rozwija własne aplikacje wspierające przepływ informacji, generowanie dokumentów, analizę akt i raportowanie.",
      toolsEyebrow: "Przykładowe aplikacje",
      toolsTitle: "Narzędzia wykorzystywane w kancelarii",
      toolsLead: "Wszystkie wymienione narzędzia pracują wewnątrz kancelarii.",
      toolLabel: "narzędzie",
      tools: [
        { name: "PI Doręczenia", desc: "obsługa doręczeń Portalu Informacyjnego" },
        { name: "Aktomat", desc: "Konwersja akt" },
        { name: "eDo Manager", desc: "elektroniczne doręczenia" },
        { name: "EPU Manager", desc: "obsługa spraw w EPU" },
        { name: "KuMail", desc: "archiwizacja korespondencji" },
        { name: "DocuGen", desc: "generator dokumentów" },
        { name: "Generator wezwań", desc: "wezwania do zapłaty" },
        { name: "Infrastruktura serwerowa", desc: "rozwiązania dedykowane" },
      ],
      securityEyebrow: "Bezpieczeństwo danych",
      securityTitle: "Tajemnica zawodowa i zgodność operacyjna",
      securityLead: "Narzędzia kancelaryjne działają w środowisku kontrolowanym przez kancelarię. Każda integracja z systemem klienta jest poprzedzona analizą poufności, ryzyka i zgodności z tajemnicą adwokacką. Dostęp do danych mają wyłącznie osoby związane tajemnicą zawodową.",
    },
    about: {
      crumb: "O kancelarii",
      title: "Kancelaria adwokacka dla klientów biznesowych",
      lead: "Od 2006 r. prowadzę kancelarię adwokacką w Warszawie. Wspieram firmy w sprawach wymagających połączenia wiedzy prawnej, doświadczenia procesowego, rozumienia biznesu i sprawnej organizacji pracy.",
      rulesEyebrow: "Jak pracuję",
      rulesTitle: "Cztery zasady prowadzenia obsługi",
      rules: [
        { t: "Bezpośrednia odpowiedzialność", d: "Klient pracuje z adwokatem prowadzącym sprawę. Strategiczne decyzje nie są delegowane." },
        { t: "Bezpieczeństwo danych i IT", d: "Stosuję wymagane prawem oraz uzgodnione z klientami zasady przetwarzania, bezpieczeństwa i dostępności danych." },
        { t: "Język biznesu", d: "Opinie i pisma piszemy tak, aby zarząd mógł podjąć decyzję bez konsultacji ze słownikiem prawniczym." },
        { t: "Technologia jako narzędzie", d: "LegalTech ma zwiększać kontrolę i przepustowość, a nie zastępować odpowiedzialność adwokata." },
      ],
    },
    contact: {
      crumb: "Kontakt",
      title: "Porozmawiajmy o obsłudze prawnej",
      lead: "Zapraszam do kontaktu w sprawach dotyczących obsługi prawnej firm, inwestycji deweloperskich, nieruchomości komercyjnych, portfeli wierzytelności oraz procesów masowych.",
      detailsEyebrow: "Dane kancelarii",
      firmName: "Kancelaria Adwokacka Marcin Kuczyński",
      linkedin: "LinkedIn / Marcin Kuczyński",
      noticeTitle: "Informacja dla pozwanych / pożyczkobiorców:",
      notice: "kancelaria nie udziela informacji o stanie spraw przeciwnikom procesowym i nie obsługuje wpłat. Informacje w sprawach pozwów, nakazów zapłaty, EPU i egzekucji należy uzyskiwać wyłącznie przez kontakt z właściwym wierzycielem lub wskazanym kanałem obsługi spraw.",
      formEyebrow: "Formularz kontaktowy",
      formTitle: "Napisz do kancelarii",
    },
  },
  en: {
    home: {
      forWhom: {
        eyebrow: "Who I work for",
        title: "Legal support for companies that need a lawyer who understands business, process and scale",
        lead: "Three B2B service paths — with direct attorney oversight and the same operational standard.",
      },
      work: {
        eyebrow: "How I work",
        title: "Direct attorney oversight. Procedural precision. Technology where it improves control and predictability.",
        p1: "I work directly with clients on strategy and key procedural or transactional decisions. Responsibility for the matter is not passed to people the client has never met.",
        p2: "In matters requiring scale, I use IT tools: document automation, API integrations, data analysis and reporting. Technology supports throughput and quality control, while legal decisions remain with the lawyer.",
      },
      metrics: {
        eyebrow: "Proof points",
        title: "Experience that can be translated into the client's operational workflow",
      },
      models: {
        eyebrow: "Cooperation models",
        title: "A model matched to the nature of the matter",
        lead: "I do not sell packages. The structure of cooperation is matched to the problem, volume and decision pace.",
      },
      contact: {
        eyebrow: "Contact",
        title: "Let us discuss a legal support model for your company",
        lead: "If your company runs a development project, manages commercial space, handles a debt portfolio or needs a law firm combining litigation practice with technology and reporting, please get in touch.",
      },
    },
    breadcrumbsHome: "Home",
    developer: {
      crumb: "Developers and construction projects",
      title: "Legal support for developers and construction projects in Poland",
      lead: "I support developers, housing cooperatives, investors and construction-related entities in ongoing legal work for projects in Poland — from planning and contracts to contractors, handover, warranty claims and disputes.",
      scopeEyebrow: "Scope of work",
      scopeTitle: "The full investment cycle",
      scopeLead: "The client works with a lawyer who understands the realities of construction projects: time pressure, cost of capital, delay risk and the need for fast management decisions.",
      items: ["legal due diligence of real estate", "preparatory procedures and administrative decisions", "designer agreements", "construction contractor agreements", "ongoing legal advice during project execution", "information prospectuses", "development agreements", "warranty, guarantee and construction defects", "disputes with the general contractor", "disputes with subcontractors", "disputes with buyers of units", "negotiations and settlements"],
      valueEyebrow: "Client value",
      valueTitle: "A lawyer who understands both legal rules and the realities of the construction process",
      valueLead: "Development and construction disputes are usually multi-layered and require decisions combining law, finance and project scheduling. I work with clients on a strategy that reduces escalation risk and helps keep the project moving.",
      cta: "Discuss project support",
    },
    portfolio: {
      crumb: "Debt portfolios",
      title: "Debt portfolio litigation and EPU proceedings in Poland",
      lead: "I handle case portfolios covering Electronic Writ-of-Payment Proceedings (EPU), civil court proceedings and enforcement. The work is supported by integrations with external systems, data and document automation, and status reporting.",
      scopeEyebrow: "Scope of work",
      scopeTitle: "From data to enforcement",
      scopeLead: "In high-volume matters, the challenge is not only legal knowledge. It is data quality, document completeness, workflow consistency, deadline control and procedural coherence from the first import of client data to the end of enforcement.",
      stat: "According to the law firm's internal statistics for 2025, in the consumer loan segment, payment orders were issued in more than 95% of matters filed in Electronic Writ-of-Payment Proceedings. The data concerns that specific segment and period; it is not a forecast of outcomes in other matters.",
      items: ["portfolio and documentation analysis", "data import from client systems", "preparation of claim templates", "Electronic Writ-of-Payment Proceedings", "paper claim preparation", "civil court proceedings", "handling formal deficiencies", "appeals and procedural remedies", "enforceability clauses", "enforcement motions", "status reporting", "handling returns, discontinuances and objections"],
      billingEyebrow: "Fee models",
      billingTitle: "A model matched to portfolio volume and character",
      models: [
        { no: "01.", title: "Monthly retainer", desc: "For entities with predictable, recurring matter flow." },
        { no: "02.", title: "Stage-based fee", desc: "Fees linked to procedural stages: EPU, court, enforceability clause and enforcement." },
        { no: "03.", title: "Hybrid / individual model", desc: "For large portfolios, restructuring projects and organizations with their own operational KPIs." },
      ],
      cta: "Discuss portfolio handling",
    },
    property: {
      crumb: "Commercial real estate",
      title: "Legal support for commercial real estate and leases in Poland",
      lead: "I support owners, property managers and asset managers in commercial lease matters — lease agreements, security instruments, rent arrears, terminations and lease disputes, from the business perspective of the landlord.",
      forWhomEyebrow: "Who this is for",
      forWhomTitle: "The perspective of owners, managers and asset managers",
      audiences: ["office building owners", "retail park owners", "commercial unit owners", "property managers", "asset managers", "legal departments"],
      scopeEyebrow: "Scope of work",
      scopeTitle: "Agreement, settlements, dispute",
      items: ["drafting and reviewing lease agreements", "negotiating landlord-protective clauses", "deposits, bank guarantees and other security instruments", "rent and service charge settlements", "indexation", "rent arrears", "lease terminations", "handover protocols", "tenant disputes", "enforcement of receivables"],
      cta: "Discuss real estate support",
    },
    legaltech: {
      crumb: "LegalTech",
      title: "LegalTech in law firm operations",
      lead: "In-house IT tools supporting matters, documents, reporting and high-volume proceedings. Technology is a quality-control tool — legal decisions remain with the attorney.",
      whyEyebrow: "Why technology in a law firm",
      whyTitle: "Many risks arise before the case reaches court",
      whyLead: "In data, documents, deadlines, statuses and communication. That is why the law firm develops in-house applications supporting information flow, document generation, file analysis and reporting.",
      toolsEyebrow: "Example applications",
      toolsTitle: "Tools used inside the law firm",
      toolsLead: "All listed tools are used internally by the law firm.",
      toolLabel: "tool",
      tools: [
        { name: "PI Doręczenia", desc: "delivery handling from the court information portal" },
        { name: "Aktomat", desc: "case file conversion" },
        { name: "eDo Manager", desc: "electronic deliveries" },
        { name: "EPU Manager", desc: "EPU matter handling" },
        { name: "KuMail", desc: "correspondence archiving" },
        { name: "DocuGen", desc: "document generation" },
        { name: "Payment demand generator", desc: "pre-litigation payment demands" },
        { name: "Server infrastructure", desc: "dedicated solutions" },
      ],
      securityEyebrow: "Data security",
      securityTitle: "Professional secrecy and operational compliance",
      securityLead: "The law firm's tools operate in an environment controlled by the law firm. Each integration with a client system is preceded by confidentiality, risk and professional secrecy analysis. Access to data is limited to persons bound by professional secrecy.",
    },
    about: {
      crumb: "About",
      title: "A Warsaw law firm for business clients",
      lead: "Since 2006 I have run a law firm in Warsaw. I support companies in matters requiring a combination of legal knowledge, litigation experience, business understanding and efficient work organization.",
      rulesEyebrow: "How I work",
      rulesTitle: "Four principles of legal support",
      rules: [
        { t: "Direct responsibility", d: "The client works with the attorney responsible for the matter. Strategic decisions are not delegated away." },
        { t: "Data and IT security", d: "I apply legal requirements and client-agreed standards for data processing, security and availability." },
        { t: "Business language", d: "Opinions and documents are written so that management can make decisions without translating legal jargon first." },
        { t: "Technology as a tool", d: "LegalTech is meant to increase control and throughput, not replace attorney responsibility." },
      ],
    },
    contact: {
      crumb: "Contact",
      title: "Let us discuss legal support",
      lead: "Please contact the law firm regarding legal support for companies, development projects, commercial real estate, debt portfolios and high-volume litigation workflows.",
      detailsEyebrow: "Law firm details",
      firmName: "Kuczyński Law Firm · Marcin Kuczyński",
      linkedin: "LinkedIn / Marcin Kuczyński",
      noticeTitle: "Information for defendants / borrowers:",
      notice: "the law firm does not provide case status information to opposing parties and does not handle payments. Information regarding claims, payment orders, EPU proceedings and enforcement should be obtained only through the relevant creditor or the indicated case service channel.",
      formEyebrow: "Contact form",
      formTitle: "Write to the law firm",
    },
  },
};

function pageCopy(locale) {
  return PAGE_COPY[locale] || PAGE_COPY.pl;
}

function contactPath(locale) {
  return locale === "en" ? "/en/contact" : "/kontakt";
}

function SubHero({ crumb, title, lead, locale }) {
  const copy = pageCopy(locale);
  return (
    <section className="uk-subhero tech-bg">
      <Container>
        <div className="uk-subhero__crumbs">
          <a href={sitePath(locale === "en" ? "/en" : "/")}>{copy.breadcrumbsHome}</a> &nbsp;/&nbsp; {crumb}
        </div>
        <h1 className="uk-subhero__h1">{title}</h1>
        <p className="uk-subhero__lead">{lead}</p>
      </Container>
    </section>
  );
}

function ListSection({ eyebrow, title, lead, extra, items }) {
  return (
    <Section tone="light">
      <div className="uk-two">
        <aside className="uk-two__aside">
          <Eyebrow>{eyebrow}</Eyebrow>
          <h2 className="uk-section__title" style={{ marginTop: 16 }}>{title}</h2>
          {lead ? <p style={{ color: "var(--text-700)", fontSize: 16, lineHeight: 1.65 }}>{lead}</p> : null}
          {extra ? <p style={{ color: "var(--text-700)", fontSize: 16, lineHeight: 1.65, marginTop: 16 }}>{extra}</p> : null}
        </aside>
        <ul className="uk-list">
          {items.map((item) => <li key={item}>{item}</li>)}
        </ul>
      </div>
    </Section>
  );
}

function CardsGrid({ items }) {
  return (
    <div className="uk-card-grid">
      {items.map((x) => (
        <div key={x} style={{ background: "var(--paper-0)", border: "1px solid var(--line-200)", padding: "20px 22px", borderRadius: 2, fontSize: 15, color: "var(--text-700)" }}>
          {x}
        </div>
      ))}
    </div>
  );
}

function ModelCards({ models }) {
  return (
    <div className="uk-models">
      {models.map((m) => (
        <div className="uk-model" key={m.no}>
          <div className="uk-model__no">{m.no}</div>
          <h3 className="uk-model__title">{m.title}</h3>
          <p className="uk-model__desc">{m.desc}</p>
        </div>
      ))}
    </div>
  );
}

function HomePage({ pushToast, locale = "pl" }) {
  const copy = pageCopy(locale).home;
  return (
    <div data-screen-label={locale === "en" ? "Home" : "Home — Strona główna"}>
      <Hero locale={locale} />

      <Section tone="light">
        <SectionHead {...copy.forWhom} />
        <ServiceGrid locale={locale} />
      </Section>

      <Section tone="paper">
        <div className="uk-split-intro">
          <div>
            <Eyebrow>{copy.work.eyebrow}</Eyebrow>
            <h2 className="uk-section__title" style={{ marginTop: 16 }}>{copy.work.title}</h2>
          </div>
          <div>
            <p style={{ fontSize: 18, lineHeight: 1.65, color: "var(--text-700)" }}>{copy.work.p1}</p>
            <p style={{ fontSize: 16, lineHeight: 1.65, color: "var(--text-700)", marginTop: 16 }}>{copy.work.p2}</p>
          </div>
        </div>
      </Section>

      <Section tone="dark">
        <div style={{ marginBottom: 48 }}>
          <Eyebrow onDark>{copy.metrics.eyebrow}</Eyebrow>
          <h2 className="uk-section__title" style={{ color: "var(--text-on-dark)", marginTop: 16, maxWidth: 720 }}>{copy.metrics.title}</h2>
        </div>
        <MetricStrip locale={locale} />
      </Section>

      <Section tone="dark">
        <LegalTechFlow locale={locale} />
      </Section>

      <Section tone="light">
        <SectionHead {...copy.models} />
        <ModelsGrid locale={locale} />
      </Section>

      <Section tone="warm">
        <AboutTeaser locale={locale} />
      </Section>

      <Section tone="dark" id="kontakt-home">
        <div className="uk-contact">
          <div>
            <Eyebrow onDark>{copy.contact.eyebrow}</Eyebrow>
            <h2 className="uk-section__title" style={{ color: "var(--text-on-dark)", marginTop: 16 }}>{copy.contact.title}</h2>
            <p style={{ color: "var(--text-on-dark-muted)", fontSize: 18, lineHeight: 1.65, marginTop: 16 }}>{copy.contact.lead}</p>
            <div style={{ marginTop: 32, display: "grid", gap: 14, color: "var(--text-on-dark)", fontSize: 15 }}>
              <div style={{ display: "flex", gap: 12, alignItems: "center" }}><Icon.MapPin width="18" height="18" style={{ color: "var(--gold-500)" }}/><span>ul. Nowy Świat 53, 00-042 Warszawa</span></div>
              <div style={{ display: "flex", gap: 12, alignItems: "center" }}><Icon.Phone width="18" height="18" style={{ color: "var(--gold-500)" }}/><span>22 247 20 97</span></div>
              <div style={{ display: "flex", gap: 12, alignItems: "center" }}><Icon.Mail width="18" height="18" style={{ color: "var(--gold-500)" }}/><span>info@kuczynski.eu</span></div>
            </div>
          </div>
          <div style={{ background: "var(--paper-0)", padding: 36, borderRadius: 2 }}>
            <ContactForm onSubmitted={pushToast} locale={locale} />
          </div>
        </div>
      </Section>
    </div>
  );
}

function DeveloperPage({ locale = "pl" }) {
  const copy = pageCopy(locale).developer;
  return (
    <div data-screen-label={copy.crumb}>
      <SubHero {...copy} locale={locale} />
      <ListSection eyebrow={copy.scopeEyebrow} title={copy.scopeTitle} lead={copy.scopeLead} items={copy.items} />
      <Section tone="dark">
        <SectionHead eyebrow={copy.valueEyebrow} title={copy.valueTitle} onDark />
        <p style={{ color: "var(--text-on-dark-muted)", fontSize: 18, lineHeight: 1.65, maxWidth: 760 }}>{copy.valueLead}</p>
        <div style={{ marginTop: 36 }}><Button kind="primary" href={sitePath(contactPath(locale))}>{copy.cta} <Icon.ArrowRight/></Button></div>
      </Section>
    </div>
  );
}

function PortfolioPage({ locale = "pl" }) {
  const copy = pageCopy(locale).portfolio;
  return (
    <div data-screen-label={copy.crumb}>
      <SubHero {...copy} locale={locale} />
      <ListSection eyebrow={copy.scopeEyebrow} title={copy.scopeTitle} lead={copy.scopeLead} extra={copy.stat} items={copy.items} />
      <Section tone="dark">
        <LegalTechFlow locale={locale} />
      </Section>
      <Section tone="paper">
        <SectionHead eyebrow={copy.billingEyebrow} title={copy.billingTitle} />
        <ModelCards models={copy.models} />
        <div style={{ marginTop: 56 }}><Button kind="primary" href={sitePath(contactPath(locale))}>{copy.cta} <Icon.ArrowRight/></Button></div>
      </Section>
    </div>
  );
}

function PropertyPage({ locale = "pl" }) {
  const copy = pageCopy(locale).property;
  return (
    <div data-screen-label={copy.crumb}>
      <SubHero {...copy} locale={locale} />
      <Section tone="light">
        <SectionHead eyebrow={copy.forWhomEyebrow} title={copy.forWhomTitle} />
        <CardsGrid items={copy.audiences} />
      </Section>
      <ListSection eyebrow={copy.scopeEyebrow} title={copy.scopeTitle} items={copy.items} />
      <Section tone="paper">
        <Button kind="primary" href={sitePath(contactPath(locale))}>{copy.cta} <Icon.ArrowRight/></Button>
      </Section>
    </div>
  );
}

function LegalTechPage({ locale = "pl" }) {
  const copy = pageCopy(locale).legaltech;
  return (
    <div data-screen-label={copy.crumb}>
      <SubHero {...copy} locale={locale} />
      <Section tone="dark">
        <SectionHead eyebrow={copy.whyEyebrow} title={copy.whyTitle} lead={copy.whyLead} onDark />
        <LegalTechFlow locale={locale} />
      </Section>
      <Section tone="light">
        <SectionHead eyebrow={copy.toolsEyebrow} title={copy.toolsTitle} lead={copy.toolsLead} />
        <div className="uk-tool-grid">
          {copy.tools.map((t) => (
            <div key={t.name} style={{ background: "var(--paper-0)", border: "1px solid var(--line-200)", padding: 22, borderRadius: 2 }}>
              <div style={{ fontFamily: "var(--font-mono)", fontSize: 11, letterSpacing: "0.1em", color: "var(--gold-700)", textTransform: "uppercase" }}>{copy.toolLabel}</div>
              <div style={{ fontFamily: "var(--font-serif)", fontWeight: 500, fontSize: 20, color: "var(--ink-900)", margin: "8px 0 6px" }}>{t.name}</div>
              <div style={{ fontSize: 13, color: "var(--text-600)", lineHeight: 1.5 }}>{t.desc}</div>
            </div>
          ))}
        </div>
      </Section>
      <Section tone="paper">
        <SectionHead eyebrow={copy.securityEyebrow} title={copy.securityTitle} />
        <p style={{ fontSize: 17, lineHeight: 1.65, color: "var(--text-700)", maxWidth: 760 }}>{copy.securityLead}</p>
      </Section>
    </div>
  );
}

function AboutPage({ locale = "pl" }) {
  const copy = pageCopy(locale).about;
  return (
    <div data-screen-label={copy.crumb}>
      <SubHero {...copy} locale={locale} />
      <Section tone="warm">
        <AboutTeaser locale={locale} />
      </Section>
      <Section tone="light">
        <SectionHead eyebrow={copy.rulesEyebrow} title={copy.rulesTitle} />
        <div className="uk-rules-grid">
          {copy.rules.map((x) => (
            <div key={x.t} style={{ background: "var(--paper-0)", border: "1px solid var(--line-200)", padding: 28, borderRadius: 2 }}>
              <h3 style={{ fontFamily: "var(--font-serif)", fontWeight: 500, fontSize: 22, color: "var(--ink-900)", margin: 0 }}>{x.t}</h3>
              <p style={{ fontSize: 15, lineHeight: 1.6, color: "var(--text-700)", margin: "10px 0 0" }}>{x.d}</p>
            </div>
          ))}
        </div>
      </Section>
    </div>
  );
}

function ContactPage({ pushToast, locale = "pl" }) {
  const copy = pageCopy(locale).contact;
  return (
    <div data-screen-label={copy.crumb}>
      <SubHero {...copy} locale={locale} />
      <Section tone="light">
        <div className="uk-contact">
          <div>
            <Eyebrow>{copy.detailsEyebrow}</Eyebrow>
            <div style={{ marginTop: 28, display: "grid", gap: 16, fontSize: 16 }}>
              <div style={{ display: "flex", gap: 12, alignItems: "flex-start" }}>
                <Icon.MapPin width="20" height="20" style={{ color: "var(--gold-700)", flexShrink: 0, marginTop: 2 }}/>
                <div>
                  <div style={{ fontWeight: 500, color: "var(--ink-900)" }}>{copy.firmName}</div>
                  <div style={{ color: "var(--text-700)" }}>ul. Nowy Świat 53<br/>00-042 Warszawa</div>
                </div>
              </div>
              <div style={{ display: "flex", gap: 12, alignItems: "center" }}><Icon.Phone width="20" height="20" style={{ color: "var(--gold-700)" }}/><a href="tel:+48222472097" style={{ color: "var(--ink-900)", textDecorationColor: "var(--gold-500)" }}>22 247 20 97</a></div>
              <div style={{ display: "flex", gap: 12, alignItems: "center" }}><Icon.Mail width="20" height="20" style={{ color: "var(--gold-700)" }}/><a href="mailto:info@kuczynski.eu" style={{ color: "var(--ink-900)", textDecorationColor: "var(--gold-500)" }}>info@kuczynski.eu</a></div>
              <div style={{ display: "flex", gap: 12, alignItems: "center" }}><Icon.Linkedin width="20" height="20" style={{ color: "var(--gold-700)" }}/><a href="https://www.linkedin.com/in/marcin-kuczynski-adwokat/" style={{ color: "var(--ink-900)", textDecorationColor: "var(--gold-500)" }}>{copy.linkedin}</a></div>
            </div>
            <div style={{ marginTop: 36, padding: 20, borderLeft: "1px solid var(--gold-500)", background: "var(--paper-0)", fontSize: 13, lineHeight: 1.55, color: "var(--text-600)" }}>
              <strong style={{ color: "var(--ink-900)" }}>{copy.noticeTitle}</strong> {copy.notice}
            </div>
          </div>
          <div style={{ background: "var(--paper-0)", padding: 36, borderRadius: 2, border: "1px solid var(--line-200)" }}>
            <Eyebrow>{copy.formEyebrow}</Eyebrow>
            <h3 style={{ fontFamily: "var(--font-serif)", fontWeight: 500, fontSize: 26, color: "var(--ink-900)", margin: "16px 0 24px" }}>{copy.formTitle}</h3>
            <ContactForm onSubmitted={pushToast} locale={locale} />
          </div>
        </div>
      </Section>
    </div>
  );
}

Object.assign(window, {
  HomePage, DeveloperPage, PortfolioPage, PropertyPage,
  LegalTechPage, AboutPage, ContactPage,
});
