diff --git a/README.md b/README.md
index 08d938ae566b4c925676894c371e33e78d103f5f..01c55a41f735bc721ef250fd84d026241998cd37 100644
--- a/README.md
+++ b/README.md
@@ -37,7 +37,6 @@ Rozšíření která používáme:
     ├── districts       = app na web kraje.pirati.cz
     ├── region          = app na weby krajskych sdruzeni
     ├── district        = app na weby mistnich sdruzeni
-    ├── program2021     = app na prezentaci programu 2021
     ├── uniweb          = app na univerzalni webove stranky
     ...
     ├── majak           = Django projekt s konfigurací Majáku
diff --git a/majak/settings/base.py b/majak/settings/base.py
index 56d9a8171fe5c31a5b46b49611c265a199d1066f..10d08998de8e918a5092057a8728ff0411e78242 100644
--- a/majak/settings/base.py
+++ b/majak/settings/base.py
@@ -38,7 +38,6 @@ INSTALLED_APPS = [
     "donate",
     "senat_campaign",
     "home",
-    "program2021",
     "uniweb",
     "region",
     "district",
diff --git a/program2021/__init__.py b/program2021/__init__.py
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
diff --git a/program2021/apps.py b/program2021/apps.py
deleted file mode 100644
index 1f3815405c4fd2088b9fd7ddd967015e3f34256e..0000000000000000000000000000000000000000
--- a/program2021/apps.py
+++ /dev/null
@@ -1,5 +0,0 @@
-from django.apps import AppConfig
-
-
-class Program2021Config(AppConfig):
-    name = "program2021"
diff --git a/program2021/fixtures/characteristic.json b/program2021/fixtures/characteristic.json
deleted file mode 100644
index 34070730e94c130eff44d8a993e0827b8766a93c..0000000000000000000000000000000000000000
--- a/program2021/fixtures/characteristic.json
+++ /dev/null
@@ -1,226 +0,0 @@
-[
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 1,
-    "fields": {
-      "name": "Žena",
-      "form_param": "female"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 2,
-    "fields": {
-      "name": "Muž",
-      "form_param": "male"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 3,
-    "fields": {
-      "name": "věk do 30",
-      "form_param": "age30"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 4,
-    "fields": {
-      "name": "věk 30-49",
-      "form_param": "age50"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 5,
-    "fields": {
-      "name": "věk 50-64",
-      "form_param": "age65"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 6,
-    "fields": {
-      "name": "věk 65+",
-      "form_param": "age99"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 7,
-    "fields": {
-      "name": "mám děti",
-      "form_param": "kids"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 8,
-    "fields": {
-      "name": "bezdětný/á",
-      "form_param": "nokids"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 9,
-    "fields": {
-      "name": "Student",
-      "form_param": "student"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 10,
-    "fields": {
-      "name": "zaměstnanec*kyně ve veřejné sféře",
-      "form_param": "employee-public"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 11,
-    "fields": {
-      "name": "zaměstnanec*kyně v soukromé sféře",
-      "form_param": "employee-private"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 12,
-    "fields": {
-      "name": "podnikatel*ka",
-      "form_param": "entrepreneur"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 13,
-    "fields": {
-      "name": "na mateřské / rodičovské",
-      "form_param": "maternity"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 14,
-    "fields": {
-      "name": "v důchodu",
-      "form_param": "retired"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 15,
-    "fields": {
-      "name": "Životní údeoveň velmi dobrá",
-      "form_param": "wealth-great"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 16,
-    "fields": {
-      "name": "Životní úroveň dobrá",
-      "form_param": "wealth-good"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 17,
-    "fields": {
-      "name": "Životní úroveň průmerná",
-      "form_param": "wealth-average"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 18,
-    "fields": {
-      "name": "Životní úroveň špatná",
-      "form_param": "wealth-bad"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 19,
-    "fields": {
-      "name": "Cestuji na kole",
-      "form_param": "travel-bike"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 20,
-    "fields": {
-      "name": "Cestuji autem",
-      "form_param": "travel-car"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 21,
-    "fields": {
-      "name": "Cestuji veřejnou dopravou",
-      "form_param": "travel-public"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 22,
-    "fields": {
-      "name": "Žiji ve velkém městě",
-      "form_param": "metropolis"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 23,
-    "fields": {
-      "name": "Žiji ve středním městě",
-      "form_param": "town"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 24,
-    "fields": {
-      "name": "Žiji v malém městě / na vesnici",
-      "form_param": "village"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 25,
-    "fields": {
-      "name": "Základní škola",
-      "form_param": "zs"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 26,
-    "fields": {
-      "name": "Střední škola bez maturity",
-      "form_param": "ss"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 27,
-    "fields": {
-      "name": "SŠ s maturitou",
-      "form_param": "maturita"
-    }
-  },
-  {
-    "model": "program2021.SearchCharacteristic",
-    "pk": 28,
-    "fields": {
-      "name": "Vysoká škola",
-      "form_param": "vs"
-    }
-  }
-]
diff --git a/program2021/migrations/0001_initial.py b/program2021/migrations/0001_initial.py
deleted file mode 100644
index f81d5a1b33f6465dbb1833ee0d885f520be97788..0000000000000000000000000000000000000000
--- a/program2021/migrations/0001_initial.py
+++ /dev/null
@@ -1,316 +0,0 @@
-# Generated by Django 3.0.8 on 2020-07-24 02:35
-
-import django.db.models.deletion
-import modelcluster.contrib.taggit
-import modelcluster.fields
-import wagtail.core.blocks
-import wagtail.core.fields
-import wagtail.images.blocks
-import wagtailmetadata.models
-from django.db import migrations, models
-
-
-class Migration(migrations.Migration):
-
-    initial = True
-
-    dependencies = [
-        ("wagtailcore", "0045_assign_unlock_grouppagepermission"),
-        ("taggit", "0003_taggeditem_add_unique_index"),
-        ("wagtailimages", "0022_uploadedimage"),
-    ]
-
-    operations = [
-        migrations.CreateModel(
-            name="Program2021HomePage",
-            fields=[
-                (
-                    "page_ptr",
-                    models.OneToOneField(
-                        auto_created=True,
-                        on_delete=django.db.models.deletion.CASCADE,
-                        parent_link=True,
-                        primary_key=True,
-                        serialize=False,
-                        to="wagtailcore.Page",
-                    ),
-                ),
-            ],
-            options={
-                "verbose_name": "Program 2021",
-            },
-            bases=("wagtailcore.page",),
-        ),
-        migrations.CreateModel(
-            name="Program2021PointPage",
-            fields=[
-                (
-                    "page_ptr",
-                    models.OneToOneField(
-                        auto_created=True,
-                        on_delete=django.db.models.deletion.CASCADE,
-                        parent_link=True,
-                        primary_key=True,
-                        serialize=False,
-                        to="wagtailcore.Page",
-                    ),
-                ),
-                (
-                    "public_title",
-                    models.CharField(
-                        blank=True,
-                        help_text="Navrhují markeťáci. Max 46 znaků.",
-                        max_length=46,
-                        null=True,
-                        verbose_name="veřejný název",
-                    ),
-                ),
-                (
-                    "code",
-                    models.CharField(
-                        blank=True,
-                        help_text="Ideálně jedno nebo dvě slova ke krátkému neformálnímu označení tématu. Max 20 znaků.",
-                        max_length=20,
-                        null=True,
-                        verbose_name="kód",
-                    ),
-                ),
-                (
-                    "annotation",
-                    models.TextField(
-                        blank=True,
-                        help_text="Text anotace by měl jasně prezentovat přínos a být dostatečně konkrétní, a to i když konkrétní parametr může být předmětem podrobnějších analýz a diskuse. Anotace má až na výjimky obsahovat konkrétní číslo reprezentující rozsah problému nebo přínos jeho řešení (v tomto případě ušetření 4 miliard). Tato část bodu společně s veřejným názvem je schvalována republikovým výborem jako závazný program do voleb. Max 140 znaků.",
-                        max_length=140,
-                        null=True,
-                        verbose_name="anotace",
-                    ),
-                ),
-                (
-                    "problem",
-                    models.TextField(
-                        blank=True,
-                        help_text="Stručné vystižení podstaty problému ve vztahu k celé společnosti a klíčové cílové skupině. Může jít o budoucí hrozbu, náklady na odkládání či dosud nevyužitou příležitost. Max 280 znaků",
-                        max_length=280,
-                        null=True,
-                        verbose_name="problém",
-                    ),
-                ),
-                (
-                    "ideal",
-                    models.TextField(
-                        blank=True,
-                        help_text="Max 280 znaků.",
-                        max_length=280,
-                        null=True,
-                        verbose_name="ideál",
-                    ),
-                ),
-                (
-                    "benefits_self_employed",
-                    models.TextField(
-                        blank=True,
-                        help_text="Stručný popis dopadu na danou cílovou skupinu. Max 140 znaků.",
-                        max_length=250,
-                        null=True,
-                        verbose_name="benefity OSVČ",
-                    ),
-                ),
-                (
-                    "benefits_companies",
-                    models.TextField(
-                        blank=True,
-                        help_text="Stručný popis dopadu na danou cílovou skupinu. Max 140 znaků.",
-                        max_length=250,
-                        null=True,
-                        verbose_name="benefity firmy",
-                    ),
-                ),
-                (
-                    "benefits_public_money",
-                    models.TextField(
-                        blank=True,
-                        help_text="Rozpracuje tým finance. Úkolem finančního týmu není zpracovat to, ale dát k tomu metodiku a metodickou pomoc. V případě žádosti o pomoc se obracejte prosím na finančního analytika poslaneckého klubu Tomáše Kopečného. Max 140 znaků.",
-                        max_length=250,
-                        null=True,
-                        verbose_name="benefity veřejné finance",
-                    ),
-                ),
-                (
-                    "already_done",
-                    wagtail.core.fields.RichTextField(
-                        blank=True,
-                        help_text="Max 1800 znaků.",
-                        max_length=1800,
-                        null=True,
-                        verbose_name="co jsme už udělali",
-                    ),
-                ),
-                (
-                    "proposals",
-                    wagtail.core.fields.RichTextField(
-                        blank=True,
-                        help_text="Konkrétní (!) body specifikující náš postup v chronologickém pořadí. Max 1800 znaků.",
-                        max_length=1800,
-                        null=True,
-                        verbose_name="navrhovaná opatření",
-                    ),
-                ),
-                (
-                    "implementation_time",
-                    models.CharField(
-                        blank=True,
-                        help_text="Doba, po které se projekt převede do standardního procesního řízení a lze vyhodnotit přinášený efekt. Jde pouze o realizační fázi, nikoliv celý životní cyklus.",
-                        max_length=20,
-                        null=True,
-                        verbose_name="časový horizont realizace",
-                    ),
-                ),
-                (
-                    "faq",
-                    wagtail.core.fields.StreamField(
-                        [
-                            (
-                                "item",
-                                wagtail.core.blocks.StructBlock(
-                                    [
-                                        (
-                                            "question",
-                                            wagtail.core.blocks.CharBlock(
-                                                label="otázka"
-                                            ),
-                                        ),
-                                        (
-                                            "answer",
-                                            wagtail.core.blocks.TextBlock(
-                                                label="odpověď"
-                                            ),
-                                        ),
-                                    ],
-                                    label="dotaz",
-                                ),
-                            )
-                        ],
-                        blank=True,
-                        verbose_name="často kladené dotazy",
-                    ),
-                ),
-                (
-                    "sources",
-                    wagtail.core.fields.RichTextField(
-                        blank=True,
-                        help_text="Naše vlastní údaje (odhady), které nevycházejí přímo z renomovaného zdroje, dokládáme vlastními analýzami na dané téma, které jsou v seznamu zdrojů a měly by procházet externí oponenturou.",
-                        null=True,
-                        verbose_name="zdroje",
-                    ),
-                ),
-                (
-                    "related",
-                    wagtail.core.fields.StreamField(
-                        [
-                            (
-                                "point",
-                                wagtail.core.blocks.PageChooserBlock(
-                                    label="programový bod",
-                                    page_type=["program2021.Program2021PointPage"],
-                                ),
-                            )
-                        ],
-                        blank=True,
-                        verbose_name="související body",
-                    ),
-                ),
-                (
-                    "images",
-                    wagtail.core.fields.StreamField(
-                        [
-                            (
-                                "image",
-                                wagtail.images.blocks.ImageChooserBlock(
-                                    label="ilustrační obrázek"
-                                ),
-                            )
-                        ],
-                        blank=True,
-                        verbose_name="ilustrační obrázky",
-                    ),
-                ),
-                (
-                    "owner_name",
-                    models.TextField(
-                        blank=True,
-                        max_length=250,
-                        null=True,
-                        verbose_name="jméno garanta (zodpovědné osoby)",
-                    ),
-                ),
-                (
-                    "owner_url",
-                    models.URLField(
-                        blank=True, null=True, verbose_name="odkaz na garanta"
-                    ),
-                ),
-                (
-                    "search_image",
-                    models.ForeignKey(
-                        blank=True,
-                        null=True,
-                        on_delete=django.db.models.deletion.SET_NULL,
-                        related_name="+",
-                        to="wagtailimages.Image",
-                        verbose_name="Search image",
-                    ),
-                ),
-            ],
-            options={
-                "verbose_name": "Programový bod",
-            },
-            bases=(
-                "wagtailcore.page",
-                wagtailmetadata.models.MetadataMixin,
-                models.Model,
-            ),
-        ),
-        migrations.CreateModel(
-            name="Program2021PointPageTag",
-            fields=[
-                (
-                    "id",
-                    models.AutoField(
-                        auto_created=True,
-                        primary_key=True,
-                        serialize=False,
-                        verbose_name="ID",
-                    ),
-                ),
-                (
-                    "content_object",
-                    modelcluster.fields.ParentalKey(
-                        on_delete=django.db.models.deletion.CASCADE,
-                        to="program2021.Program2021PointPage",
-                    ),
-                ),
-                (
-                    "tag",
-                    models.ForeignKey(
-                        on_delete=django.db.models.deletion.CASCADE,
-                        related_name="program2021_program2021pointpagetag_items",
-                        to="taggit.Tag",
-                    ),
-                ),
-            ],
-            options={
-                "abstract": False,
-            },
-        ),
-        migrations.AddField(
-            model_name="program2021pointpage",
-            name="tags",
-            field=modelcluster.contrib.taggit.ClusterTaggableManager(
-                blank=True,
-                help_text="A comma-separated list of tags.",
-                through="program2021.Program2021PointPageTag",
-                to="taggit.Tag",
-                verbose_name="Tags",
-            ),
-        ),
-    ]
diff --git a/program2021/migrations/0002_auto_20200805_0726.py b/program2021/migrations/0002_auto_20200805_0726.py
deleted file mode 100644
index df6abceaaa10feeaca54b02336e977efa4ece320..0000000000000000000000000000000000000000
--- a/program2021/migrations/0002_auto_20200805_0726.py
+++ /dev/null
@@ -1,35 +0,0 @@
-# Generated by Django 3.0.8 on 2020-08-05 05:26
-
-from django.db import migrations, models
-
-
-class Migration(migrations.Migration):
-
-    dependencies = [
-        ("program2021", "0001_initial"),
-    ]
-
-    operations = [
-        migrations.AddField(
-            model_name="program2021homepage",
-            name="headline",
-            field=models.CharField(
-                blank=True,
-                help_text="Hlavní titulek domovské stránky",
-                max_length=100,
-                null=True,
-                verbose_name="název programu",
-            ),
-        ),
-        migrations.AddField(
-            model_name="program2021homepage",
-            name="perex",
-            field=models.TextField(
-                blank=True,
-                help_text="Text pod titulkem",
-                max_length=512,
-                null=True,
-                verbose_name="perex",
-            ),
-        ),
-    ]
diff --git a/program2021/migrations/0003_auto_20200805_1034.py b/program2021/migrations/0003_auto_20200805_1034.py
deleted file mode 100644
index fcc26724e1b79dad8364f9871f16e6551b611313..0000000000000000000000000000000000000000
--- a/program2021/migrations/0003_auto_20200805_1034.py
+++ /dev/null
@@ -1,61 +0,0 @@
-# Generated by Django 3.0.8 on 2020-08-05 08:34
-
-import django.db.models.deletion
-import modelcluster.contrib.taggit
-import modelcluster.fields
-from django.db import migrations, models
-
-
-class Migration(migrations.Migration):
-
-    dependencies = [
-        ("taggit", "0003_taggeditem_add_unique_index"),
-        ("program2021", "0002_auto_20200805_0726"),
-    ]
-
-    operations = [
-        migrations.CreateModel(
-            name="Program2021PointPageSearchTag",
-            fields=[
-                (
-                    "id",
-                    models.AutoField(
-                        auto_created=True,
-                        primary_key=True,
-                        serialize=False,
-                        verbose_name="ID",
-                    ),
-                ),
-                (
-                    "content_object",
-                    modelcluster.fields.ParentalKey(
-                        on_delete=django.db.models.deletion.CASCADE,
-                        to="program2021.Program2021PointPage",
-                    ),
-                ),
-                (
-                    "tag",
-                    models.ForeignKey(
-                        on_delete=django.db.models.deletion.CASCADE,
-                        related_name="program2021_program2021pointpagesearchtag_items",
-                        to="taggit.Tag",
-                    ),
-                ),
-            ],
-            options={
-                "abstract": False,
-            },
-        ),
-        migrations.AddField(
-            model_name="program2021pointpage",
-            name="search_tags",
-            field=modelcluster.contrib.taggit.ClusterTaggableManager(
-                blank=True,
-                help_text='Tagy pro vyhledavani. Musi byt zadany presne, aby to fungovalo. Tagy jsou deleny do skupin se spolecnym prefixem, napr. "gender".  \nPriklad: chces-li programovy bod pouze pro muze, zadej tag "gender-male", pokud je to jedno, musis zadat tag "gender-every". Seznam tagu a skupin:\nx y z\nb d f\nl o p q\n         ',
-                related_name="search_tags",
-                through="program2021.Program2021PointPageSearchTag",
-                to="taggit.Tag",
-                verbose_name="Tags",
-            ),
-        ),
-    ]
diff --git a/program2021/migrations/0003_program2021pointpage_image_title.py b/program2021/migrations/0003_program2021pointpage_image_title.py
deleted file mode 100644
index a8f4520b8b8c6069aee66f3dd479cfb03dafa182..0000000000000000000000000000000000000000
--- a/program2021/migrations/0003_program2021pointpage_image_title.py
+++ /dev/null
@@ -1,26 +0,0 @@
-# Generated by Django 3.0.8 on 2020-08-06 08:54
-
-import django.db.models.deletion
-from django.db import migrations, models
-
-
-class Migration(migrations.Migration):
-
-    dependencies = [
-        ("wagtailimages", "0022_uploadedimage"),
-        ("program2021", "0002_auto_20200805_0726"),
-    ]
-
-    operations = [
-        migrations.AddField(
-            model_name="program2021pointpage",
-            name="image_title",
-            field=models.ForeignKey(
-                blank=True,
-                null=True,
-                on_delete=django.db.models.deletion.PROTECT,
-                to="wagtailimages.Image",
-                verbose_name="titulní obrázek",
-            ),
-        ),
-    ]
diff --git a/program2021/migrations/0004_auto_20200930_1156.py b/program2021/migrations/0004_auto_20200930_1156.py
deleted file mode 100644
index 7c8bb8c2afb16cd01df91ca48adc9376612f779a..0000000000000000000000000000000000000000
--- a/program2021/migrations/0004_auto_20200930_1156.py
+++ /dev/null
@@ -1,41 +0,0 @@
-# Generated by Django 3.1.1 on 2020-09-30 09:56
-
-import wagtail.core.blocks
-import wagtail.core.fields
-import wagtail.images.blocks
-from django.db import migrations
-
-
-class Migration(migrations.Migration):
-
-    dependencies = [
-        ("program2021", "0003_program2021pointpage_image_title"),
-    ]
-
-    operations = [
-        migrations.AlterField(
-            model_name="program2021pointpage",
-            name="images",
-            field=wagtail.core.fields.StreamField(
-                [
-                    (
-                        "item",
-                        wagtail.core.blocks.StructBlock(
-                            [
-                                (
-                                    "image",
-                                    wagtail.images.blocks.ImageChooserBlock(
-                                        label="ilustrační obrázek"
-                                    ),
-                                ),
-                                ("title", wagtail.core.blocks.CharBlock(label="popis")),
-                            ],
-                            label="obrázek",
-                        ),
-                    )
-                ],
-                blank=True,
-                verbose_name="ilustrační obrázky",
-            ),
-        ),
-    ]
diff --git a/program2021/migrations/0004_merge_20200812_1337.py b/program2021/migrations/0004_merge_20200812_1337.py
deleted file mode 100644
index 8fed978fb3c1ca2d58e84434b574fc1e610828ca..0000000000000000000000000000000000000000
--- a/program2021/migrations/0004_merge_20200812_1337.py
+++ /dev/null
@@ -1,13 +0,0 @@
-# Generated by Django 3.0.8 on 2020-08-12 11:37
-
-from django.db import migrations
-
-
-class Migration(migrations.Migration):
-
-    dependencies = [
-        ("program2021", "0003_auto_20200805_1034"),
-        ("program2021", "0003_program2021pointpage_image_title"),
-    ]
-
-    operations = []
diff --git a/program2021/migrations/0005_auto_20200812_1337.py b/program2021/migrations/0005_auto_20200812_1337.py
deleted file mode 100644
index d2391ed2e85e2a3c5be85f55f243b932d122adab..0000000000000000000000000000000000000000
--- a/program2021/migrations/0005_auto_20200812_1337.py
+++ /dev/null
@@ -1,78 +0,0 @@
-# Generated by Django 3.0.8 on 2020-08-12 11:37
-
-import django.db.models.deletion
-import modelcluster.contrib.taggit
-from django.db import migrations, models
-
-
-class Migration(migrations.Migration):
-
-    dependencies = [
-        ("taggit", "0003_taggeditem_add_unique_index"),
-        ("program2021", "0004_merge_20200812_1337"),
-    ]
-
-    operations = [
-        migrations.CreateModel(
-            name="SearchCharacteristic",
-            fields=[
-                (
-                    "id",
-                    models.AutoField(
-                        auto_created=True,
-                        primary_key=True,
-                        serialize=False,
-                        verbose_name="ID",
-                    ),
-                ),
-                (
-                    "name",
-                    models.CharField(
-                        max_length=200,
-                        verbose_name="lidský název pro použití v administraci",
-                    ),
-                ),
-            ],
-        ),
-        migrations.AlterField(
-            model_name="program2021pointpage",
-            name="search_tags",
-            field=modelcluster.contrib.taggit.ClusterTaggableManager(
-                blank=True,
-                help_text='Deleny do skupin se spolecnym prefixem, napr. "gender". Pokud je bod spolecny pro vsechny moznosti dane skupiny, pouzij tag se suffixem "-every".  \nPriklad: chces-li programovy bod pouze pro muze, zadej tag "gender-male", pokud je to jedno, musis zadat tag "gender-every". \nPro kazdou skupinu musis zadat aspon jeden tag, jinak se bod nedostane nikdy do vysledku vyhledavani. Seznam tagu po skupinach:\n(gender-male gender-female gender-every) \n(age-30 age-50 age-65 age-99 age-every) \n(kids-yes kids-no kids-every)\n(occupation-student occupation-employee-public occupation-employee-private occupation-entrepreneur occupation-maternity occupation-retired occupation-every)\n(wealth-excelent wealth-good wealth-average wealth-bad wealth-every)\n(travel-bike travel-car travel-public travel-every)\n(housing-metropolis housing-town housing-village housing-every) \n(education-zs education-ss education-maturita education-vs education-every)\n         ',
-                related_name="search_tags",
-                through="program2021.Program2021PointPageSearchTag",
-                to="taggit.Tag",
-                verbose_name="Tagy pro vyhledávání",
-            ),
-        ),
-        migrations.CreateModel(
-            name="CharacteristicWeight",
-            fields=[
-                (
-                    "id",
-                    models.AutoField(
-                        auto_created=True,
-                        primary_key=True,
-                        serialize=False,
-                        verbose_name="ID",
-                    ),
-                ),
-                ("weight", models.IntegerField()),
-                (
-                    "program_point",
-                    models.ForeignKey(
-                        on_delete=django.db.models.deletion.CASCADE,
-                        to="program2021.Program2021PointPage",
-                    ),
-                ),
-                (
-                    "search_characteristic",
-                    models.ForeignKey(
-                        on_delete=django.db.models.deletion.CASCADE,
-                        to="program2021.SearchCharacteristic",
-                    ),
-                ),
-            ],
-        ),
-    ]
diff --git a/program2021/migrations/0006_auto_20200812_1556.py b/program2021/migrations/0006_auto_20200812_1556.py
deleted file mode 100644
index 2741e763dba243170702f95f1eec30c2086077aa..0000000000000000000000000000000000000000
--- a/program2021/migrations/0006_auto_20200812_1556.py
+++ /dev/null
@@ -1,38 +0,0 @@
-# Generated by Django 3.0.8 on 2020-08-12 13:56
-
-import django.db.models.deletion
-import modelcluster.fields
-from django.db import migrations, models
-
-
-class Migration(migrations.Migration):
-
-    dependencies = [
-        ("program2021", "0005_auto_20200812_1337"),
-    ]
-
-    operations = [
-        migrations.AlterField(
-            model_name="characteristicweight",
-            name="program_point",
-            field=modelcluster.fields.ParentalKey(
-                on_delete=django.db.models.deletion.CASCADE,
-                related_name="program_point_link",
-                to="program2021.Program2021PointPage",
-            ),
-        ),
-        migrations.AlterField(
-            model_name="characteristicweight",
-            name="search_characteristic",
-            field=models.ForeignKey(
-                on_delete=django.db.models.deletion.CASCADE,
-                to="program2021.SearchCharacteristic",
-                verbose_name="Charakteristika",
-            ),
-        ),
-        migrations.AlterField(
-            model_name="characteristicweight",
-            name="weight",
-            field=models.IntegerField(verbose_name="Váha"),
-        ),
-    ]
diff --git a/program2021/migrations/0007_auto_20200812_1951.py b/program2021/migrations/0007_auto_20200812_1951.py
deleted file mode 100644
index 959a81069af16a92b394d7276ba0425f22187e87..0000000000000000000000000000000000000000
--- a/program2021/migrations/0007_auto_20200812_1951.py
+++ /dev/null
@@ -1,52 +0,0 @@
-# Generated by Django 3.0.8 on 2020-08-12 17:51
-
-import django.db.models.deletion
-import modelcluster.contrib.taggit
-from django.db import migrations, models
-
-
-class Migration(migrations.Migration):
-
-    dependencies = [
-        ("taggit", "0003_taggeditem_add_unique_index"),
-        ("program2021", "0006_auto_20200812_1556"),
-    ]
-
-    operations = [
-        migrations.AddField(
-            model_name="searchcharacteristic",
-            name="form_param",
-            field=models.CharField(
-                blank=True,
-                max_length=20,
-                null=True,
-                verbose_name="ID parametru ve formuláři",
-            ),
-        ),
-        migrations.AlterField(
-            model_name="characteristicweight",
-            name="search_characteristic",
-            field=models.ForeignKey(
-                on_delete=django.db.models.deletion.CASCADE,
-                to="program2021.SearchCharacteristic",
-                verbose_name="Zadáno",
-            ),
-        ),
-        migrations.AlterField(
-            model_name="program2021pointpage",
-            name="search_tags",
-            field=modelcluster.contrib.taggit.ClusterTaggableManager(
-                blank=True,
-                help_text='Deleny do skupin se spolecnym prefixem, napr. "gender". Pokud je bod spolecny pro vsechny moznosti dane skupiny, pouzij tag se suffixem "-every".\nPriklad: chces-li programovy bod pouze pro muze, zadej tag "gender-male", pokud je to jedno, musis zadat tag "gender-every".\nPro kazdou skupinu musis zadat aspon jeden tag, jinak se bod nedostane nikdy do vysledku vyhledavani. Seznam tagu po skupinach:\n(gender-male gender-female gender-every)\n(age-30 age-50 age-65 age-99 age-every)\n(kids-yes kids-no kids-every)\n(occupation-student occupation-employee-public occupation-employee-private occupation-entrepreneur occupation-maternity occupation-retired occupation-every)\n(wealth-excelent wealth-good wealth-average wealth-bad wealth-every)\n(travel-bike travel-car travel-public travel-every)\n(housing-metropolis housing-town housing-village housing-every)\n(education-zs education-ss education-maturita education-vs education-every)\n         ',
-                related_name="search_tags",
-                through="program2021.Program2021PointPageSearchTag",
-                to="taggit.Tag",
-                verbose_name="Tagy pro vyhledávání",
-            ),
-        ),
-        migrations.AlterField(
-            model_name="searchcharacteristic",
-            name="name",
-            field=models.CharField(max_length=200, verbose_name="Název"),
-        ),
-    ]
diff --git a/program2021/migrations/0008_auto_20200812_2117.py b/program2021/migrations/0008_auto_20200812_2117.py
deleted file mode 100644
index 6ba95fa360086640722e089eaa48cf7950056c9e..0000000000000000000000000000000000000000
--- a/program2021/migrations/0008_auto_20200812_2117.py
+++ /dev/null
@@ -1,20 +0,0 @@
-# Generated by Django 3.0.8 on 2020-08-12 19:17
-
-from django.db import migrations
-
-
-class Migration(migrations.Migration):
-
-    dependencies = [
-        ("program2021", "0007_auto_20200812_1951"),
-    ]
-
-    operations = [
-        migrations.RemoveField(
-            model_name="program2021pointpage",
-            name="search_tags",
-        ),
-        migrations.DeleteModel(
-            name="Program2021PointPageSearchTag",
-        ),
-    ]
diff --git a/program2021/migrations/0009_merge_20201026_2345.py b/program2021/migrations/0009_merge_20201026_2345.py
deleted file mode 100644
index 721bf891805aada16a9dca34164a9d5e90a55a39..0000000000000000000000000000000000000000
--- a/program2021/migrations/0009_merge_20201026_2345.py
+++ /dev/null
@@ -1,13 +0,0 @@
-# Generated by Django 3.1.2 on 2020-10-26 22:45
-
-from django.db import migrations
-
-
-class Migration(migrations.Migration):
-
-    dependencies = [
-        ("program2021", "0008_auto_20200812_2117"),
-        ("program2021", "0004_auto_20200930_1156"),
-    ]
-
-    operations = []
diff --git a/program2021/migrations/__init__.py b/program2021/migrations/__init__.py
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
diff --git a/program2021/models.py b/program2021/models.py
deleted file mode 100644
index 8f21c313824c9eb1608167059ce13bb0c0998385..0000000000000000000000000000000000000000
--- a/program2021/models.py
+++ /dev/null
@@ -1,355 +0,0 @@
-from django.db import models
-from django.utils.translation import gettext_lazy
-from modelcluster.contrib.taggit import ClusterTaggableManager
-from modelcluster.fields import ParentalKey
-from taggit.models import TaggedItemBase
-from wagtail.admin.edit_handlers import (
-    FieldPanel,
-    HelpPanel,
-    InlinePanel,
-    MultiFieldPanel,
-    ObjectList,
-    StreamFieldPanel,
-    TabbedInterface,
-)
-from wagtail.core import blocks
-from wagtail.core.fields import RichTextField, StreamField
-from wagtail.core.models import Page
-from wagtail.images.blocks import ImageChooserBlock
-from wagtail.images.edit_handlers import ImageChooserPanel
-from wagtailmetadata.models import MetadataPageMixin
-
-
-class SearchCharacteristic(models.Model):
-    """ Ciselnik charakteristik odesilanych uzivatelem, napriklad vek65+ """
-
-    name = models.CharField("Název", max_length=200, blank=False, null=False)
-
-    # mapování chareakteristiky na přislusnou POST promennou odeslanou HTML formularem
-    form_param = models.CharField(
-        "ID parametru ve formuláři", max_length=20, blank=True, null=True
-    )
-
-    def __str__(self):
-        return self.name
-
-
-class CharacteristicWeight(models.Model):
-    """ Prirazeni vahy jedntlivych charakteristik programovym blokum """
-
-    search_characteristic = models.ForeignKey(
-        SearchCharacteristic, on_delete=models.CASCADE, verbose_name="Zadáno"
-    )
-    program_point = ParentalKey(
-        "Program2021PointPage",
-        on_delete=models.CASCADE,
-        related_name="program_point_link",
-    )
-    weight = models.IntegerField(verbose_name="Váha")
-
-    panels = [
-        FieldPanel("search_characteristic"),
-        FieldPanel("weight"),
-    ]
-
-
-class Program2021HomePage(Page):
-    ### FIELDS
-    headline = models.CharField(
-        "název programu",
-        max_length=100,
-        blank=True,
-        null=True,
-        help_text="Hlavní titulek domovské stránky",
-    )
-    perex = models.TextField(
-        "perex",
-        max_length=512,
-        blank=True,
-        null=True,
-        help_text="Text pod titulkem",
-    )
-
-    ### PANELS
-
-    content_panels = Page.content_panels + [
-        MultiFieldPanel(
-            [
-                FieldPanel("headline"),
-                FieldPanel("perex"),
-            ],
-            heading="Vyhledávací formulář",
-        ),
-    ]
-
-    settings_panels = []
-
-    ### RELATIONS
-
-    subpage_types = ["program2021.Program2021PointPage"]
-
-    ### OTHERS
-
-    class Meta:
-        verbose_name = "Program 2021"
-
-    def get_context(self, request):
-        context = super().get_context(request)
-
-        if request.method == "POST":
-
-            sent_tags = [request.POST.get(x, None) for x in request.POST.keys()]
-            sent_tags = [x for x in sent_tags if x]
-
-            # dopocitej vahu podle predanych parametru z vyhledavani...
-            context["points"] = self.get_children().live().specific()
-            for point in context["points"]:
-                point.weight = point.get_weight(sent_tags)
-
-            # ...a setrid dle ni vysledky. HACK: pomale, ale pocitame max. v desitkach zaznamu, tedy acceptable
-            context["points"] = sorted(context["points"], key=lambda x: -x.weight)
-
-        else:
-            # neformular - vrat vsechny body
-            context["points"] = self.get_children().live().specific()
-
-        return context
-
-
-class Program2021PointPageTag(TaggedItemBase):
-    content_object = ParentalKey(
-        "program2021.Program2021PointPage", on_delete=models.CASCADE
-    )
-
-
-class Program2021PointPage(Page, MetadataPageMixin):
-    RICH_TEXT_FEATURES = ["bold", "italic", "ol", "ul", "link", "document-link"]
-
-    ### FIELDS
-    public_title = models.CharField(
-        "veřejný název",
-        max_length=46,
-        blank=True,
-        null=True,
-        help_text="Navrhují markeťáci. Max 46 znaků.",
-    )
-    code = models.CharField(
-        "kód",
-        max_length=20,
-        blank=True,
-        null=True,
-        help_text="Ideálně jedno nebo dvě slova ke krátkému neformálnímu označení tématu. Max 20 znaků.",
-    )
-    annotation = models.TextField(
-        "anotace",
-        max_length=140,
-        blank=True,
-        null=True,
-        help_text="Text anotace by měl jasně prezentovat přínos a být dostatečně konkrétní, a to i když konkrétní parametr může být předmětem podrobnějších analýz a diskuse. Anotace má až na výjimky obsahovat konkrétní číslo reprezentující rozsah problému nebo přínos jeho řešení (v tomto případě ušetření 4 miliard). Tato část bodu společně s veřejným názvem je schvalována republikovým výborem jako závazný program do voleb. Max 140 znaků.",
-    )
-    problem = models.TextField(
-        "problém",
-        max_length=280,
-        blank=True,
-        null=True,
-        help_text="Stručné vystižení podstaty problému ve vztahu k celé společnosti a klíčové cílové skupině. Může jít o budoucí hrozbu, náklady na odkládání či dosud nevyužitou příležitost. Max 280 znaků",
-    )
-    ideal = models.TextField(
-        "ideál", max_length=280, blank=True, null=True, help_text="Max 280 znaků."
-    )
-    benefits_self_employed = models.TextField(
-        "benefity OSVČ",
-        max_length=250,
-        blank=True,
-        null=True,
-        help_text="Stručný popis dopadu na danou cílovou skupinu. Max 140 znaků.",
-    )
-    benefits_companies = models.TextField(
-        "benefity firmy",
-        max_length=250,
-        blank=True,
-        null=True,
-        help_text="Stručný popis dopadu na danou cílovou skupinu. Max 140 znaků.",
-    )
-    benefits_public_money = models.TextField(
-        "benefity veřejné finance",
-        max_length=250,
-        blank=True,
-        null=True,
-        help_text="Rozpracuje tým finance. Úkolem finančního týmu není zpracovat to, ale dát k tomu metodiku a metodickou pomoc. V případě žádosti o pomoc se obracejte prosím na finančního analytika poslaneckého klubu Tomáše Kopečného. Max 140 znaků.",
-    )
-    already_done = RichTextField(
-        "co jsme už udělali",
-        max_length=1800,
-        blank=True,
-        null=True,
-        help_text="Max 1800 znaků.",
-        features=RICH_TEXT_FEATURES,
-    )
-    proposals = RichTextField(
-        "navrhovaná opatření",
-        max_length=1800,
-        blank=True,
-        null=True,
-        help_text="Konkrétní (!) body specifikující náš postup v chronologickém pořadí. Max 1800 znaků.",
-        features=RICH_TEXT_FEATURES,
-    )
-    implementation_time = models.CharField(
-        "časový horizont realizace",
-        max_length=20,
-        blank=True,
-        null=True,
-        help_text="Doba, po které se projekt převede do standardního procesního řízení a lze vyhodnotit přinášený efekt. Jde pouze o realizační fázi, nikoliv celý životní cyklus.",
-    )
-    faq = StreamField(
-        [
-            (
-                "item",
-                blocks.StructBlock(
-                    [
-                        ("question", blocks.CharBlock(label="otázka")),
-                        ("answer", blocks.TextBlock(label="odpověď")),
-                    ],
-                    label="dotaz",
-                ),
-            ),
-        ],
-        verbose_name="často kladené dotazy",
-        blank=True,
-    )
-    sources = RichTextField(
-        "zdroje",
-        blank=True,
-        null=True,
-        help_text="Naše vlastní údaje (odhady), které nevycházejí přímo z renomovaného zdroje, dokládáme vlastními analýzami na dané téma, které jsou v seznamu zdrojů a měly by procházet externí oponenturou.",
-        features=RICH_TEXT_FEATURES,
-    )
-    related = StreamField(
-        [
-            (
-                "point",
-                blocks.PageChooserBlock(
-                    label="programový bod", page_type="program2021.Program2021PointPage"
-                ),
-            ),
-        ],
-        verbose_name="související body",
-        blank=True,
-    )
-    image_title = models.ForeignKey(
-        "wagtailimages.Image",
-        verbose_name="titulní obrázek",
-        on_delete=models.PROTECT,
-        null=True,
-        blank=True,
-    )
-    images = StreamField(
-        [
-            (
-                "item",
-                blocks.StructBlock(
-                    [
-                        ("image", ImageChooserBlock(label="ilustrační obrázek")),
-                        ("title", blocks.CharBlock(label="popis")),
-                    ],
-                    label="obrázek",
-                ),
-            ),
-        ],
-        verbose_name="ilustrační obrázky",
-        blank=True,
-    )
-    owner_name = models.TextField(
-        "jméno garanta (zodpovědné osoby)", max_length=250, blank=True, null=True
-    )
-    owner_url = models.URLField("odkaz na garanta", blank=True, null=True)
-    tags = ClusterTaggableManager(through=Program2021PointPageTag, blank=True)
-
-    ### PANELS
-
-    content_panels = Page.content_panels + [
-        MultiFieldPanel(
-            [
-                FieldPanel("public_title"),
-                FieldPanel("annotation"),
-                FieldPanel("tags"),
-                FieldPanel("problem"),
-                FieldPanel("ideal"),
-                FieldPanel("already_done"),
-                FieldPanel("proposals"),
-                FieldPanel("sources"),
-                FieldPanel("implementation_time"),
-                FieldPanel("code"),
-                ImageChooserPanel("image_title"),
-            ],
-            heading="základní informace",
-        ),
-        MultiFieldPanel(
-            [FieldPanel("owner_name"), FieldPanel("owner_url")],
-            heading="garant",
-        ),
-        StreamFieldPanel("images"),
-        StreamFieldPanel("related"),
-    ]
-
-    benefits_content_panels = [
-        HelpPanel(
-            "V této části rozpracováváme benefity tak, abychom je mohli souhrnně nabídnout dané cílové skupině. Negativní věci zpracováváme typicky do často kladených otázek dole. U negativ se však vždy prezentuje i související přínos (tzv. balíčkovací zásada, např. snížíme daně z práce díky lepšímu zdanění zisků dnes vyváděných do zahraničí), aby nikdo nemohl takový bod vytrhnout z kontextu a prezentovat proti nám."
-        ),
-        MultiFieldPanel(
-            [
-                FieldPanel("benefits_self_employed"),
-                FieldPanel("benefits_companies"),
-                FieldPanel("benefits_public_money"),
-            ]
-        ),
-    ]
-
-    faq_content_panels = [
-        StreamFieldPanel("faq"),
-    ]
-
-    search_panels = [InlinePanel("program_point_link", label="Váhy vyhledávání")]
-
-    promote_panels = [
-        MultiFieldPanel(
-            [
-                FieldPanel("slug"),
-                FieldPanel("seo_title"),
-                FieldPanel("search_description"),
-                ImageChooserPanel("search_image"),
-            ],
-            gettext_lazy("Common page configuration"),
-        ),
-    ]
-
-    edit_handler = TabbedInterface(
-        [
-            ObjectList(content_panels, heading=gettext_lazy("Content")),
-            ObjectList(benefits_content_panels, heading="Benefity"),
-            ObjectList(search_panels, heading="Hledání"),
-            ObjectList(faq_content_panels, heading="FAQ"),
-            ObjectList(promote_panels, heading=gettext_lazy("Promote")),
-        ]
-    )
-
-    ### RELATIONS
-
-    parent_page_types = ["program2021.Program2021HomePage"]
-    subpage_types = []
-
-    ### OTHERS
-
-    class Meta:
-        verbose_name = "Programový bod"
-
-    def get_weight(self, param_ids):
-        """ Vraci celkovou vahu tagu, predanych v seznamu param_ids """
-        # Kvuli prehlednosti nepisu jako oneliner :)
-        my_weights = self.program_point_link.all()
-        involved_weights = [
-            x.weight
-            for x in my_weights
-            if x.search_characteristic.form_param in param_ids
-        ]
-        return sum(involved_weights)
diff --git a/program2021/templates/program2021/base.html b/program2021/templates/program2021/base.html
deleted file mode 100644
index 7bca669c699cd0de2918bdf8706bf01429de4807..0000000000000000000000000000000000000000
--- a/program2021/templates/program2021/base.html
+++ /dev/null
@@ -1,52 +0,0 @@
-{% load static wagtailcore_tags wagtailimages_tags wagtailmetadata_tags %}
-<!doctype html>
-<html lang="en">
-  <head>
-    <!-- Required meta tags -->
-    <meta charset="utf-8">
-    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
-
-    <!-- Bootstrap CSS -->
-    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk" crossorigin="anonymous">
-
-    <title>Program 2021</title>
-
-    {% if settings.MAJAK_ENV == "test" %}
-      <meta name="robots" content="noindex, nofollow">
-    {% endif %}
-
-    <style type="text/css">
-      .card a {
-        text-decoration: none;
-        color: inherit;
-      }
-    </style>
-  </head>
-  <body>
-    <header>
-      <div class="navbar navbar-dark bg-dark shadow-sm">
-        <div class="container d-flex justify-content-between">
-          <a href="/" class="navbar-brand d-flex align-items-center">
-            <svg class="bi bi-file-earmark-check" width="1em" height="1em" viewBox="0 0 16 16" fill="currentColor" xmlns="http://www.w3.org/2000/svg">
-              <path d="M9 1H4a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h5v-1H4a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1h5v2.5A1.5 1.5 0 0 0 10.5 6H13v2h1V6L9 1z"/>
-              <path fill-rule="evenodd" d="M15.854 10.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708l1.146 1.147 2.646-2.647a.5.5 0 0 1 .708 0z"/>
-            </svg>
-            <strong>&nbsp;Program 2021</strong>
-          </a>
-        </div>
-      </div>
-    </header>
-
-    <main role="main">
-
-      {% block content %}{% endblock %}
-
-    </main>
-
-    <!-- Optional JavaScript -->
-    <!-- jQuery first, then Popper.js, then Bootstrap JS -->
-    <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
-    <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script>
-    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js" integrity="sha384-OgVRvuATP1z7JjHLkuOU7Xw704+h835Lr+6QL9UvYjZE3Ipu6Tp75j7Bh/kR0JKI" crossorigin="anonymous"></script>
-  </body>
-</html>
diff --git a/program2021/templates/program2021/program2021_home_page.html b/program2021/templates/program2021/program2021_home_page.html
deleted file mode 100644
index a889c69ead00a5efc1c2d9fec7d9fffac390474f..0000000000000000000000000000000000000000
--- a/program2021/templates/program2021/program2021_home_page.html
+++ /dev/null
@@ -1,193 +0,0 @@
-{% extends "program2021/base.html" %}
-{% load static wagtailimages_tags wagtailcore_tags %}
-{% block content %}
-
-<section class="jumbotron text-center">
-  <div class="container">
-    <h1>{{ page.headline }}</h1>
-    <p class="lead mt-3"><big>{{ page.perex }}</big></p>
-
-    <form class="text-left mt-5" action="{% pageurl page %}" method="POST">
-      {% csrf_token %}
-
-      <div class="row my-3">
-        <div class="col-2 text-right">pohlaví:</div>
-        <div class="col-4 btn-group btn-group-toggle" data-toggle="buttons">
-          <label class="btn btn-outline-secondary">
-            <input type="radio" name="gender" id="gender1" value="female" autocomplete="off"> žena
-          </label>
-          <label class="btn btn-outline-secondary">
-            <input type="radio" name="gender" id="gender2" value="male" autocomplete="off"> muž
-          </label>
-          <label class="btn btn-outline-secondary active">
-            <input type="radio" name="gender" id="gender3" value="" autocomplete="off"> jiné / nechci uvést
-          </label>
-        </div>
-      </div>
-
-      <div class="row my-3">
-        <div class="col-2 text-right">věk:</div>
-        <div class="col-6 btn-group btn-group-toggle" data-toggle="buttons">
-          <label class="btn btn-outline-secondary active">
-            <input type="radio" name="age" id="age1" value="age30" autocomplete="off"> do 30 let
-          </label>
-          <label class="btn btn-outline-secondary">
-            <input type="radio" name="age" id="age2" value="age50" autocomplete="off"> 30 - 49 let
-          </label>
-          <label class="btn btn-outline-secondary">
-            <input type="radio" name="age" id="age3" value="age65" autocomplete="off"> 50 - 64 let
-          </label>
-          <label class="btn btn-outline-secondary">
-            <input type="radio" name="age" id="age4" value="age99" autocomplete="off"> 65+ let
-          </label>
-          <label class="btn btn-outline-secondary">
-            <input type="radio" name="age" id="age5" value="" autocomplete="off"> nechci uvést
-          </label>
-        </div>
-      </div>
-
-      <div class="row my-3">
-        <div class="col-2 text-right">mám děti:</div>
-        <div class="col-3 btn-group btn-group-toggle" data-toggle="buttons">
-          <label class="btn btn-outline-secondary">
-            <input type="radio" name="kids" id="kids1" value="kids" autocomplete="off"> ano
-          </label>
-          <label class="btn btn-outline-secondary">
-            <input type="radio" name="kids" id="kids2" value="nokids" autocomplete="off"> ne
-          </label>
-          <label class="btn btn-outline-secondary active">
-            <input type="radio" name="kids" id="kids3" value="" autocomplete="off"> nechci uvést
-          </label>
-        </div>
-      </div>
-
-      <div class="row form-group">
-        <div class="col-2 text-right">
-          <label for="occupation">jsem:</label>
-        </div>
-        <div class="col-4">
-          <select class="form-control" id="occupation" name="occupation">
-            <option value="">jiné / nechci uvést</option>
-            <option value="student">studující</option>
-            <option value="employee-public">zaměstnaný/á ve veřejné sféře</option>
-            <option value="employee-private">zaměstnaný/á v soukromé sféře</option>
-            <option value="entrepreneur">podnikající</option>
-            <option value="maternity">na mateřské / rodičovské</option>
-            <option value="retired">v důchodu</option>
-          </select>
-        </div>
-      </div>
-
-      <div class="row form-group">
-        <div class="col-2 text-right">
-          <label for="wealth">životní úroveň:</label>
-        </div>
-        <div class="col-4">
-          <select class="form-control" id="wealth" name="wealth">
-            <option value="">jiné / nechci uvést</option>
-            <option value="wealth-great">velmi dobrá</option>
-            <option value="wealth-good">dobrá</option>
-            <option value="wealth-average">ani dobrá, ani špatná</option>
-            <option value="wealth-bad">špatná</option>
-          </select>
-        </div>
-      </div>
-
-      <div class="row form-group">
-        <div class="col-2 text-right">
-          často jezdím:
-        </div>
-        <div class="col-4">
-          <div class="custom-control custom-checkbox">
-            <input type="checkbox" class="custom-control-input" id="travel1" value="travel-bike" name="travel-bike">
-            <label class="custom-control-label" for="travel1">na kole</label>
-          </div>
-          <div class="custom-control custom-checkbox">
-            <input type="checkbox" class="custom-control-input" id="travel2" value="travel-car" name="travel-car">
-            <label class="custom-control-label" for="travel2">autem</label>
-          </div>
-          <div class="custom-control custom-checkbox">
-            <input type="checkbox" class="custom-control-input" id="travel3" value="travel-public" name="travel-public">
-            <label class="custom-control-label" for="travel3">veřejnou dopravou</label>
-          </div>
-        </div>
-      </div>
-
-      <div class="row form-group">
-        <div class="col-2 text-right">
-          <label for="housing">bydlím:</label>
-        </div>
-        <div class="col-4">
-          <select class="form-control" id="housing" name="housing">
-            <option value="">jiné / nechci uvést</option>
-            <option value="metropolis">ve velkém městě nebo jeho okolí</option>
-            <option value="town">ve středně velkém městě (10 - 50 tis.)</option>
-            <option value="village">v malém městě nebo na vesnici</option>
-          </select>
-        </div>
-      </div>
-
-      <div class="row my-3">
-        <div class="col-2 text-right">vzdělání:</div>
-        <div class="col-6 btn-group btn-group-toggle" data-toggle="buttons">
-          <label class="btn btn-outline-secondary">
-            <input type="radio" name="education" id="education1" value="zs" autocomplete="off"> ZŠ
-          </label>
-          <label class="btn btn-outline-secondary">
-            <input type="radio" name="education" id="education2" value="ss" autocomplete="off"> SŠ bez maturity
-          </label>
-          <label class="btn btn-outline-secondary">
-            <input type="radio" name="education" id="education3" value="maturita" autocomplete="off"> SŠ s maturitou
-          </label>
-          <label class="btn btn-outline-secondary">
-            <input type="radio" name="education" id="education4" value="vs" autocomplete="off"> VŠ
-          </label>
-          <label class="btn btn-outline-secondary active">
-            <input type="radio" name="education" id="education5" value="" autocomplete="off"> nechci uvést
-          </label>
-        </div>
-      </div>
-
-      <div class="row form-group">
-        <div class="col-2">
-        </div>
-        <div class="col-4">
-          <input type="submit" value="Vyhledat">
-        </div>
-      </div>
-
-    </form>
-
-  </div>
-</section>
-
-<div class="my-5">
-  <div class="container">
-    <div class="row">
-
-      {% for point in points %}
-      <div class="col-md-4">
-        <div class="card mb-4 shadow-sm">
-          <a href="{% pageurl point %}">
-            <div class="card-body">
-              <div class="mb-3">
-                {% image point.image_title max-400x200 class="lazyload img-fluid w-100" %}
-              </div>
-              <h5 class="card-title">{{ point.public_title }}</h5>
-              <p class="card-text">{{ point.annotation }}</p>
-              <p class="card-text">
-                {% for tag in point.tags.all %}
-                <span class="badge badge-light"># {{ tag }}</span>
-                {% endfor %}
-              </p>
-            </div>
-          </a>
-        </div>
-      </div>
-      {% endfor %}
-
-    </div>
-  </div>
-</div>
-
-{% endblock %}
diff --git a/program2021/templates/program2021/program2021_point_page.html b/program2021/templates/program2021/program2021_point_page.html
deleted file mode 100644
index ea50b14b9c8c4ae8006ea03f7f69271319151779..0000000000000000000000000000000000000000
--- a/program2021/templates/program2021/program2021_point_page.html
+++ /dev/null
@@ -1,112 +0,0 @@
-{% extends "program2021/base.html" %}
-{% load static wagtailimages_tags wagtailcore_tags %}
-
-{% block content %}
-
-<div class="container">
-  <div class="row">
-
-    <div class="jumbotron mb-5 col-12">
-
-      <div class="row">
-        <div class="col-12 col-lg-4">
-           {% if page.images.0.block_type == 'image' %}
-            {% image page.images.0.value max-300x200 class="" %}
-           {% endif %}
-        </div>
-        <div class="col-12 col-lg-8 px-lg-5">
-          <h1 class="display-4">{{ page.public_title }}</h1>
-          <p class="lead">{{ page.annotation }}</p>
-        </div>
-      </div>
-
-      <p class="mt-4 mb-0 text-right">
-        {% for tag in page.tags.all %}
-        <span class="badge badge-light"># {{ tag }}</span>
-        {% endfor %}
-      </p>
-    </div>
-
-    <div class="col-md-6 p-1">
-      <div class="jumbotron h-100">
-        <h3>Problém</h3>
-        <p>{{ page.problem }}</p>
-      </div>
-    </div>
-
-    <div class="col-md-6 p-1">
-      <div class="jumbotron h-100">
-        <h3>Ideál</h3>
-        <p>{{ page.ideal }}</p>
-      </div>
-    </div>
-
-    <div class="w-100 my-4"></div>
-
-    <div class="col-md-6 pr-5">
-      <h3>Navrhovaná opatření</h3>
-      <p>{{ page.proposals|richtext }}</p>
-    </div>
-
-    <div class="col-md-6 pl-5">
-      <h3>Co jsme už udělali</h3>
-      <p>{{ page.already_done|richtext }}</p>
-    </div>
-
-    <div class="w-100 my-4"></div>
-
-    <div class="col-md-6 pr-5">
-      <h3>Benefity</h3>
-      <h5 class="mt-4">OSVČ</h5>
-      <p>{{ page.benefits_self_employed }}</p>
-      <h5 class="mt-4">Firmy</h5>
-      <p>{{ page.benefits_companies }}</p>
-      <h5 class="mt-4">Veřejné finance</h5>
-      <p>{{ page.benefits_public_money }}</p>
-    </div>
-
-    <div class="col-md-6 pl-5">
-      <h3>Často kladené otázky</h3>
-      {% for qa in page.faq %}
-        <h5 class="mt-4">{{ qa.value.question }}</h5>
-        <p>{{ qa.value.answer }}</p>
-      {% endfor %}
-    </div>
-
-    <div class="w-100 my-4"></div>
-
-    <div class="col-md-6 pr-5">
-      <h3>Časový horizont</h3>
-      {% if page.implementation_time %}
-      <p>{{ page.implementation_time }}</p>
-      {% endif %}
-      <h3 class="mt-4">Související body</h3>
-      <ul>
-        {% for point in page.related %}
-        <li><a href="{% pageurl point.value %}">{{ point.value.title }}</a></li>
-        {% endfor %}
-      </ul>
-    </div>
-
-    <div class="col-md-6 pl-5">
-      <h3>Zdroje</h3>
-      <p>{{ page.sources|richtext }}</p>
-    </div>
-
-    {% if page.images %}
-    <div class="row about-images mb-5 mt-3 jumbotron">
-      {% for block in page.images %}
-        {% image block.value.image width-2000 as img %}
-        {% image block.value.image fill-300x200 as thumb %}
-        <div class="col-6 col-md-3 mb-4">
-          <a data-fancybox="gallery" href="{{ img.url }}"><img data-src="{{ thumb.url }}" class="lazyload img-fluid" alt="{{ block.value.title }}"></a><br>
-          {{ block.value.title }}
-        </div><!-- /column -->
-      {% endfor %}
-    </div><!-- /row -->
-    {% endif %}
-
-  </div>
-</div>
-
-{% endblock %}