diff --git a/main/migrations/0012_remove_mainpersonpage_facebook_and_more.py b/main/migrations/0012_remove_mainpersonpage_facebook_and_more.py
new file mode 100644
index 0000000000000000000000000000000000000000..5a248c48a5a3bf337958157c7993a6d5b281507f
--- /dev/null
+++ b/main/migrations/0012_remove_mainpersonpage_facebook_and_more.py
@@ -0,0 +1,52 @@
+# Generated by Django 4.0.7 on 2022-08-24 10:43
+
+from django.db import migrations, models
+import wagtail.blocks
+import wagtail.fields
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('main', '0011_alter_mainarticlepage_content_and_more'),
+    ]
+
+    operations = [
+        migrations.RemoveField(
+            model_name='mainpersonpage',
+            name='facebook',
+        ),
+        migrations.RemoveField(
+            model_name='mainpersonpage',
+            name='instagram',
+        ),
+        migrations.RemoveField(
+            model_name='mainpersonpage',
+            name='twitter',
+        ),
+        migrations.AddField(
+            model_name='mainpersonpage',
+            name='main_image',
+            field=models.ImageField(blank=True, null=True, upload_to='', verbose_name='Hlavní obrázek'),
+        ),
+        migrations.AddField(
+            model_name='mainpersonpage',
+            name='people',
+            field=wagtail.fields.StreamField([('people_group', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(label='Titulek')), ('slug', wagtail.blocks.CharBlock(help_text='Není třeba vyplňovat, bude automaticky vyplněno', label='Slug skupiny', required=False)), ('person_list', wagtail.blocks.ListBlock(wagtail.blocks.PageChooserBlock(label='Detail osoby', page_type=['main.MainPersonPage']), label='Skupina osob'))], label='Seznam osob'))], blank=True, use_json_field=None, verbose_name='Lidé'),
+        ),
+        migrations.AddField(
+            model_name='mainpersonpage',
+            name='profile_image',
+            field=models.ImageField(blank=True, null=True, upload_to='', verbose_name='Profilový obrázek'),
+        ),
+        migrations.AddField(
+            model_name='mainpersonpage',
+            name='social_links',
+            field=wagtail.fields.StreamField([('social_links', wagtail.blocks.StructBlock([('text', wagtail.blocks.CharBlock(label='Titulkek odkazu (text, který se zobrazí místo dlouhého odkazu)')), ('link', wagtail.blocks.URLBlock(label='Odkaz')), ('icon', wagtail.blocks.CharBlock(label='Ikona'))]))], blank=True, use_json_field=None, verbose_name='Odkazy na sociální sítě'),
+        ),
+        migrations.AlterField(
+            model_name='mainpeoplepage',
+            name='people',
+            field=wagtail.fields.StreamField([('people_group', wagtail.blocks.StructBlock([('title', wagtail.blocks.CharBlock(label='Titulek')), ('slug', wagtail.blocks.CharBlock(help_text='Není třeba vyplňovat, bude automaticky vyplněno', label='Slug skupiny', required=False)), ('person_list', wagtail.blocks.ListBlock(wagtail.blocks.PageChooserBlock(label='Detail osoby', page_type=['main.MainPersonPage']), label='Skupina osob'))], label='Seznam osob'))], blank=True, use_json_field=None, verbose_name='Lidé'),
+        ),
+    ]
diff --git a/main/models.py b/main/models.py
index 74f6befa6f956b67a5a1630e40b1baff62022425..00dfbfe6e820a80d6c674ad4d9aa6dac8b8db7a7 100644
--- a/main/models.py
+++ b/main/models.py
@@ -415,6 +415,8 @@ class MainPeoplePage(ExtendedMetadataPageMixin, SubpageMixin, MetadataPageMixin,
 class MainPersonPage(ExtendedMetadataPageMixin, SubpageMixin, MetadataPageMixin, Page):
 
     ### FIELDS
+    main_image = models.ImageField("Hlavní obrázek", blank=True, null=True)
+    profile_image = models.ImageField("Profilový obrázek", blank=True, null=True)
     before_name = models.CharField(
         "Tituly před jménem", max_length=16, blank=True, null=True
     )
@@ -434,13 +436,23 @@ class MainPersonPage(ExtendedMetadataPageMixin, SubpageMixin, MetadataPageMixin,
         max_length=32,
     )
 
+    social_links = StreamField(
+        [
+            ("social_links", blocks.SocialLinkBlock()),
+        ],
+        verbose_name="Odkazy na sociální sítě",
+        blank=True,
+    )
+
+    people = StreamField(
+        [("people_group", blocks.PeopleGroupBlock(label="Seznam osob"))],
+        verbose_name="Lidé",
+        blank=True,
+    )
+
     email = models.CharField("E-mail", max_length=128, blank=True, null=True)
     phone = models.CharField("Telefonní kontakt", max_length=16, blank=True, null=True)
 
-    facebook = models.URLField("Odkaz na Facebook", blank=True, null=True)
-    twitter = models.URLField("Odkaz na Twitter", blank=True, null=True)
-    instagram = models.URLField("Odkaz na Instagram", blank=True, null=True)
-
     settings_panels = []
 
     ### RELATIONS
@@ -450,6 +462,8 @@ class MainPersonPage(ExtendedMetadataPageMixin, SubpageMixin, MetadataPageMixin,
 
     ### PANELS
     content_panels = Page.content_panels + [
+        FieldPanel("main_image"),
+        FieldPanel("profile_image"),
         FieldPanel("before_name"),
         FieldPanel("after_name"),
         FieldPanel("position"),
@@ -458,9 +472,8 @@ class MainPersonPage(ExtendedMetadataPageMixin, SubpageMixin, MetadataPageMixin,
         FieldPanel("text"),
         FieldPanel("email"),
         FieldPanel("phone"),
-        FieldPanel("facebook"),
-        FieldPanel("twitter"),
-        FieldPanel("instagram"),
+        FieldPanel("social_links"),
+        FieldPanel("people"),
     ]
 
     def get_context(self, request):
diff --git a/main/templates/main/main_person_page.html b/main/templates/main/main_person_page.html
index 5775102e789518974781a840ad4f94604ef6fb5f..9119c3c96b00f904a073a1ffcc956e047a87fb58 100644
--- a/main/templates/main/main_person_page.html
+++ b/main/templates/main/main_person_page.html
@@ -2,9 +2,157 @@
 {% load static wagtailcore_tags wagtailimages_tags shared_filters %}
 
 {% block content %}
-<main role="main">
+  <main role="main">
 
+    {#    {{> organisms-header }}#}
+    {##}
+    {#    {{> molecules-photo_header }}#}
 
-  {% include 'main/includes/newsletter_section.html' %}
-</main>
+
+    <div class="">
+      <section class="grid-container person-grid-container">
+        <div class="grid-content leading-6">
+          <article class="mb-4 xl:mb-24 xl:mr-2">
+            <p class="font-alt mb-5">
+              {{ page.text|richtext }}
+            </p>
+          </article>
+        </div>
+        <div class="grid-right-side mb-8 xl:mb-0">
+          <div class="bg-grey-100 mb-1 px-7 py-9">
+            <div class="flex mb-2">
+              <i class="ico--envelope mr-2"></i>
+              <a href="mailto:{{ page.email }}" class="text-turquoise-500 underline">
+                {{ page.email }}
+              </a>
+            </div>
+            <div class="flex mb-2">
+              <i class="ico--phone mr-2"></i>
+              <a href="tel:+{{ page.phone }}">
+                {{ page.phone }}
+              </a>
+            </div>
+          </div>
+          <div class="bg-grey-100 px-7 py-9">
+            {% if page.facebook %}
+              <div class="flex mb-2">
+                <i class="ico--facebook mr-2"></i>
+                <a href="{{ page.facebook }}">
+                  Facebook
+                </a>
+              </div>
+            {% endif %}
+            {% if page.twitter %}
+              <div class="flex mb-2">
+                <i class="ico--twitter mr-2"></i>
+                <a href="{{ page.twitter }}">
+                  Twitter
+                </a>
+              </div>
+            {% endif %}
+            {% if page.instagram %}
+              <div class="flex mb-2">
+                <i class="ico--instagram mr-2"></i>
+                <a href="{{ page.instagram }}">
+                  Instagram
+                </a>
+              </div>
+            {% endif %}
+          </div>
+        </div>
+      </section>
+    </div>
+    {% if not tweet_list.empty %}
+      <section class="grid-container no-max">
+        <div class="grid-content-with-right-side">
+          <h2 class="head-4xl text-center xl:text-left">
+            Aktuálně na Twitteru
+          </h2>
+          <div class="mb-8 flex flex-wrap">
+            {% for tweet in page.tweet_list %}
+              <div class="md:w-1/3 lg:w-1/4">
+                <div class="p-4 flex flex-col items-center text-center border border-grey-100">
+                  <img class="rounded-full shadow-sm w-12 mb-2" src="https://randomuser.me/api/portraits/women/56.jpg"
+                       alt="user image"/>
+                  <h5 class="font-alt mb-2">{{ tweet.author_name }}</h5>
+                  <small class="mb-4 text-turquoise-400">@{{ tweet.author_username }}</small>
+                  <p class="text-base leading-6 mb-2">{{ tweet.text }}</p>
+                  <a href="" class="hover:no-underline">
+                    <i class="ico--twitter text-turquoise-400 text-xl"></i>
+                  </a>
+                </div>
+              </div>
+            {% endfor %}
+          </div>
+        </div>
+      </section>
+    {% endif %}
+    {% if not article_page_list.empty %}
+      <section class="grid-container mb-4 justify-start xl:mb-14">
+        <div class="grid-content">
+          <div class="leading-6">
+            <h2 class="head-4xl">
+              Články
+            </h2>
+            {% for article_preview in article_page_list %}
+              <div class="flex flex-col justify-between items-start mb-9">
+                <div class="flex font-bold mb-4 text-xs text-white uppercase">
+                  <span class="bg-green-400 mr-1 px-1">{{ article_preview.date }}</span>
+                  {% for tag in article_preview.tags.all %}
+                    <span class="bg-violet-400 mr-1 px-1">{{ tag }}</span>
+                  {% endfor %}
+                </div>
+                <h4 class="head-3xl mb-4">
+                  {{ article_preview.title }}
+                </h4>
+                <p class="mb-6">
+                  {{ article_preview.perex }}
+                </p>
+                {% include 'main/includes/button_animated.html' with btn_link=article_preview.url btn_text="Číst dále" %}
+              </div>
+            {% endfor %}
+          </div>
+        </div>
+      </section>
+    {% endif %}
+    {% for people_group in page.people %}
+      <section class="grid-container person-grid-container mb-4 justify-start xl:mb-14">
+        <div class="grid-content-with-right-side">
+          <h2 class="head-4xl text-left">
+            {{ people_group.value.title }}
+          </h2>
+          {% for person in people_group %}
+            <div class="flex flex-wrap">
+            <div class="flex mb-16 person-box-medium">
+              <div class="shrink-0 mr-4">
+                {% image people_group.value.profile_image max-300x300 as profile_image %}
+                <img
+                  class="rounded-full shadow-sm w-20 mb-2 xl:w-44"
+                  src="{{ profile_image.url }}"
+                  alt=" {{ people_group.value.title }}"
+                >
+              </div>
+              <div class="flex flex-col justify-between py-4">
+                <div class="flex flex-col">
+                  <h4 class="head-3xl">
+                    {{ people_group.value.title }}
+                  </h4>
+                  <span
+                    class="text-sm xl:text-base leading-6 mb-6">{{ people_group.value.position|default_if_none:"" }}</span>
+                </div>
+                <div>
+                  {% include 'main/includes/button_animated.html' with btn_link=people_group.value.url btn_text="Detail" %}
+                </div>
+              </div>
+            </div>
+          {% endfor %}
+          </div>
+        </div>
+      </section>
+    {% endfor %}
+    </div>
+
+    {% include 'main/includes/newsletter_section.html' %}
+
+  </main>
 {% endblock content %}