diff --git a/src/patterns/04-components/card/card--banner/card--banner.twig b/src/patterns/04-components/card/card--banner/card--banner.twig
index c38d3d905d7928061138ae5476dc00b6a8fa63d8..f7b97d2683ed99465943d7278a6c93a1f4ef809f 100644
--- a/src/patterns/04-components/card/card--banner/card--banner.twig
+++ b/src/patterns/04-components/card/card--banner/card--banner.twig
@@ -4,5 +4,6 @@
     'show_header': 'no',
     'type': 'banner',
     'faculty': faculty,
+    'bundle': banners.bundle,
   } %}
 {% endfor %}
diff --git a/src/patterns/04-components/card/card--node/_card--node.twig b/src/patterns/04-components/card/card--node/_card--node.twig
index 2eeeb815a1a2f61de3c95a8dbaf5ef59166fd24d..f22d052f5ff6f3cec5a11a383b1d7f1602dd0864 100644
--- a/src/patterns/04-components/card/card--node/_card--node.twig
+++ b/src/patterns/04-components/card/card--node/_card--node.twig
@@ -5,19 +5,19 @@
 {% endif %}
 
 {% set modifier_classes = 'node--' ~ node.bundle %}
-
 <div class="uw-node__{{ node_image_class }}">
   {% include '@components/card/card.twig' with {
+    'bundle': node.bundle,
     'url': node.url,
     'type': type,
     'show_hover': '',
     'header': node.header,
-    'show_header': show_header,
     'media': node.media,
     'image': node.image,
     'content': node.content,
     'footer': node.footer,
     'tags': node.tags,
     'ical': node.ical,
+    'media_flags': media_flags
   } %}
 </div>
diff --git a/src/patterns/04-components/card/card-elements/_header.twig b/src/patterns/04-components/card/card-elements/_header.twig
index d605ca28ca2ec61dddd344c1862f149452d1abac..97e53979bc6024396368e431eec7fae8130d0525 100644
--- a/src/patterns/04-components/card/card-elements/_header.twig
+++ b/src/patterns/04-components/card/card-elements/_header.twig
@@ -25,7 +25,7 @@
     } %}
   {% endif %}
 
-  {% if header.title and show_title == 'yes' %}
+  {% if header.title and (media_flags.has_media or type == 'teaser') %}
 
     {% if type  == 'teaser' %}
       {% set header_level = '2' %}
diff --git a/src/patterns/04-components/card/card-elements/_media.twig b/src/patterns/04-components/card/card-elements/_media.twig
index d46de46be21cbd8dbed1af8f835c41793de6bc6c..a3085ba91b969d33a01e5d9e7dad9b66328399d0 100644
--- a/src/patterns/04-components/card/card-elements/_media.twig
+++ b/src/patterns/04-components/card/card-elements/_media.twig
@@ -4,13 +4,6 @@
     {% include '@components/banners/banners.twig' with {
       'banners': media.media
     } only %}
-    {% if header %}
-      {% include '@components/card/card-elements/_header.twig' with {
-        'header': header,
-        'show_title': 'yes',
-        'header_level': 1,
-      } %}
-    {% endif %}
   {% endif %}
 
   {% if media.type == 'image' %}
diff --git a/src/patterns/04-components/card/card.twig b/src/patterns/04-components/card/card.twig
index 1838f804a49072a5cdb8a3b2b0fcb0a564a3f6e8..de71a0666a264b2586a3393621e8ed830019f8f4 100644
--- a/src/patterns/04-components/card/card.twig
+++ b/src/patterns/04-components/card/card.twig
@@ -1,41 +1,28 @@
-{% if show_header is null %}
-  {% set show_header = 'yes' %}
-{% endif %}
-
-{% if type == 'teaser' %}
-  {% set show_title = 'yes' %}
-{% elseif media and (media.type == 'image' or media.type == 'banner') %}
-  {% set show_title = 'no' %}
-  {% set show_header = 'no' %}
-{% else %}
-  {% set show_title = 'no' %}
-{% endif %}
-
-{% if show_image is null %}
-  {% set show_image = 'yes' %}
-{% endif %}
-
 <article class="card{% if type %} card__{{ type }} {% endif %}{% if modifier_classes %} card__{{ modifier_classes }}{% endif %}{% if show_hover %} card--show-hover{% endif %}" {% if type == 'banner' %} id="{{ type }}{{ loop.index }}-{{ banners.uuid }}"{% endif %}>
-  {% if media %}
+
+  {% if media_flags.has_media %}
     {% include '@components/card/card-elements/_media.twig' with {
       'media': media,
       'header': header,
+      'bundle': bundle,
+      'media_flags': media_flags
     } %}
   {% endif %}
 
-  {% if image and show_image == 'yes' and bundle != 'uw_ct_profile' %}
+  {% if image and bundle != 'uw_ct_profile' %}
     {% include '@components/card/card-elements/_image.twig' with {
       'image': image
     } %}
   {% endif %}
 
-  {% if header and show_header == 'yes' %}
+  {% if header and not media_flags.show_header_in_media %}
     {% include '@components/card/card-elements/_header.twig' with {
       'header': header,
-      'show_title': show_title,
       'type': type,
       'image': image,
-      'bundle': bundle
+      'bundle': bundle,
+      'header_level': 1,
+      'media_flags': media_flags
     } %}
   {% endif %}