# Instructions

- Following Playwright test failed.
- Explain why, be concise, respect Playwright best practices.
- Provide a snippet of code with the fix, if possible.

# Test info

- Name: mfc-corporate-de.spec.ts >> content › textmedia › pixel-images >> 2-images-beside-text
- Location: visual/mfc-corporate-de.spec.ts:173:9

# Error details

```
Error: expect(page).toHaveScreenshot(expected) failed

  4124 pixels (ratio 0.01 of all image pixels) are different.

  Snapshot: content-textmedia-pixel-2-images-beside-text.png

Call log:
  - Expect "toHaveScreenshot(content-textmedia-pixel-2-images-beside-text.png)" with timeout 15000ms
    - verifying given screenshot expectation
  - taking page screenshot
    - disabled all CSS animations
  - waiting for fonts to load...
  - fonts loaded
  - 4124 pixels (ratio 0.01 of all image pixels) are different.
  - waiting 100ms before taking screenshot
  - taking page screenshot
    - disabled all CSS animations
  - waiting for fonts to load...
  - fonts loaded
  - captured a stable screenshot
  - 4124 pixels (ratio 0.01 of all image pixels) are different.

```

# Page snapshot

```yaml
- generic [ref=e2]:
  - link "Zum Inhalt springen" [ref=e3] [cursor=pointer]:
    - /url: "#page-content"
  - navigation "Brotkrumen-Navigation" [ref=e4]:
    - generic [ref=e5]:
      - paragraph [ref=e6]: "Sie sind here:"
      - list [ref=e7]:
        - listitem [ref=e8]:
          - link "Startseite" [ref=e9] [cursor=pointer]:
            - /url: /
            - img [ref=e10]
        - listitem [ref=e12]:
          - text: /
          - link "Inhaltselemente" [ref=e13] [cursor=pointer]:
            - /url: /inhaltselemente/
            - generic [ref=e14]: Inhaltselemente
        - listitem [ref=e15]:
          - text: /
          - link "Textmedia" [ref=e16] [cursor=pointer]:
            - /url: /inhaltselemente/textmedia/
            - generic [ref=e17]: Textmedia
        - listitem [ref=e18]:
          - text: /
          - 'link "Textmedia: Pixel-Bilder" [ref=e19] [cursor=pointer]':
            - /url: /inhaltselemente/textmedia/pixel-bilder/
            - generic [ref=e20]: "Textmedia: Pixel-Bilder"
        - listitem [ref=e21]:
          - text: /
          - generic [ref=e22]: 2 Bilder, neben Text
  - main [ref=e23]:
    - generic [ref=e26]:
      - generic [ref=e28]:
        - 'figure "Foto: Flo Huber Fotografie" [ref=e30]':
          - img "Teilnehmer der T3CON 2015" [ref=e32]
          - generic [ref=e33]: "Foto: Flo Huber Fotografie"
        - figure [ref=e35]
      - generic [ref=e37]:
        - heading "2 Pixel-Bilder, Neben dem Text links" [level=3] [ref=e39]
        - paragraph [ref=e40]: Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
    - generic [ref=e43]:
      - generic [ref=e45]:
        - 'figure "Foto: Flo Huber Fotografie" [ref=e47]':
          - img "Teilnehmer der T3CON 2015" [ref=e49]
          - generic [ref=e50]: "Foto: Flo Huber Fotografie"
        - figure [ref=e52]
      - generic [ref=e54]:
        - heading "2 Pixel-Bilder, Neben dem Text rechts" [level=3] [ref=e56]
        - paragraph [ref=e57]: Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
  - contentinfo [ref=e58]:
    - generic [ref=e61]:
      - navigation [ref=e62]:
        - list [ref=e63]:
          - listitem [ref=e64]:
            - button "Cookie-Einstellungen" [ref=e65] [cursor=pointer]
          - listitem [ref=e66]:
            - link "Datenschutzerklärung" [ref=e67] [cursor=pointer]:
              - /url: https://www.marketing-factory.de/datenschutzerklaerung/
          - listitem [ref=e68]:
            - link "Impressum" [ref=e69] [cursor=pointer]:
              - /url: https://www.marketing-factory.de/impressum/
      - generic [ref=e70]:
        - paragraph [ref=e71]: © Marketing Factory Digital GmbH
        - paragraph [ref=e72]:
          - text: Alternativtexte für Bilder sind teilweise
          - link "KI-generiert" [ref=e73] [cursor=pointer]:
            - /url: https://www.marketing-factory.de/technologie/typo3/unsere-typo3-extensions/ai-filemetadata/
    - generic [ref=e76]:
      - strong [ref=e77]: Bildnachweise
      - list [ref=e78]:
        - listitem [ref=e79]:
          - link "\"Community\"" [ref=e80] [cursor=pointer]:
            - /url: https://www.flickr.com/photos/typo3/22591723990/in/album-72157660826109695/
          - text: ":"
          - link "Flo Huber Fotografie" [ref=e81] [cursor=pointer]:
            - /url: https://www.flickr.com/photos/typo3/
          - text: "/ Lizenz:"
          - link "CC0 1.0" [ref=e82] [cursor=pointer]:
            - /url: https://creativecommons.org/publicdomain/zero/1.0/
```

# Test source

```ts
  77  |         await hideElements(page, PAGE_HEADER);
  78  |         await scrollToBottom(page);
  79  |         await expect(page).toHaveScreenshot(snap('content-timeline'));
  80  |     });
  81  | 
  82  |     test('divider', async ({ page }) => {
  83  |         await setup(page, '/inhaltselemente/divider/');
  84  |         await expect(page).toHaveScreenshot(snap('content-divider'));
  85  |     });
  86  | 
  87  |     test('container', async ({ page }) => {
  88  |         await setup(page, '/inhaltselemente/container/');
  89  |         await hideElements(page, PAGE_HEADER);
  90  |         await scrollToBottom(page);
  91  |         await expect(page).toHaveScreenshot(snap('content-container'));
  92  |     });
  93  | 
  94  |     test('card-group', async ({ page }) => {
  95  |         await setup(page, '/inhaltselemente/card-group/');
  96  |         await expect(page).toHaveScreenshot(snap('content-card-group'));
  97  |     });
  98  | 
  99  |     test('quote', async ({ page }) => {
  100 |         await setup(page, '/inhaltselemente/quote/');
  101 |         await expect(page).toHaveScreenshot(snap('content-quote'));
  102 |     });
  103 | 
  104 |     test('text-icon', async ({ page }) => {
  105 |         await setup(page, '/inhaltselemente/text-icon/');
  106 |         await expect(page).toHaveScreenshot(snap('content-text-icon'));
  107 |         await setDarkTheme(page);
  108 |         await expect(page).toHaveScreenshot(snap('content-text-icon-dark'));
  109 |     });
  110 | 
  111 |     test('text-in-columns', async ({ page }) => {
  112 |         await setup(page, '/inhaltselemente/text-in-columns/');
  113 |         await expect(page).toHaveScreenshot(snap('content-text-in-columns'));
  114 |     });
  115 | 
  116 |     test('menu-sitemap', async ({ page }) => {
  117 |         await setup(page, '/inhaltselemente/menu-sitemap/');
  118 |         await expect(page).toHaveScreenshot(snap('content-menu-sitemap'));
  119 |     });
  120 | 
  121 |     test('menu-section', async ({ page }) => {
  122 |         await setup(page, '/inhaltselemente/menu-section/');
  123 |         await expect(page).toHaveScreenshot(snap('content-menu-section'));
  124 |     });
  125 | 
  126 |     test('menu-pages', async ({ page }) => {
  127 |         await setup(page, '/inhaltselemente/menu-pages/');
  128 |         await expect(page).toHaveScreenshot(snap('content-menu-pages'));
  129 |     });
  130 | 
  131 |     test('space-before-after', async ({ page }) => {
  132 |         await setup(page, '/inhaltselemente/space-before-after/');
  133 |         await expect(page).toHaveScreenshot(snap('content-space-before-after'));
  134 |     });
  135 | });
  136 | 
  137 | test.describe('content › textmedia › pixel-images', () => {
  138 |     test('1-image-top-bottom-centered', async ({ page }) => {
  139 |         await setup(page, '/inhaltselemente/textmedia/pixel-bilder/1-bild-oben-unten-zentriert/');
  140 |         await hideElements(page, PAGE_HEADER);
  141 |         await scrollToBottom(page);
  142 |         await expect(page).toHaveScreenshot(snap('content-textmedia-pixel-1-image-top-bottom-centered'));
  143 |     });
  144 | 
  145 |     test('1-image-beside-text-centered', async ({ page }) => {
  146 |         await setup(page, '/inhaltselemente/textmedia/pixel-bilder/1-bild-neben-text-zentriert/');
  147 |         await hideElements(page, PAGE_HEADER);
  148 |         await scrollToBottom(page);
  149 |         await expect(page).toHaveScreenshot(snap('content-textmedia-pixel-1-image-beside-text-centered'));
  150 |     });
  151 | 
  152 |     test('1-image-beside-text', async ({ page }) => {
  153 |         await setup(page, '/inhaltselemente/textmedia/pixel-bilder/1-bild-neben-text/');
  154 |         await hideElements(page, PAGE_HEADER);
  155 |         await scrollToBottom(page);
  156 |         await expect(page).toHaveScreenshot(snap('content-textmedia-pixel-1-image-beside-text'));
  157 |     });
  158 | 
  159 |     test('2-images-top-bottom-centered', async ({ page }) => {
  160 |         await setup(page, '/inhaltselemente/textmedia/pixel-bilder/2-bilder-oben-unten-zentriert/');
  161 |         await hideElements(page, PAGE_HEADER);
  162 |         await scrollToBottom(page);
  163 |         await expect(page).toHaveScreenshot(snap('content-textmedia-pixel-2-images-top-bottom-centered'));
  164 |     });
  165 | 
  166 |     test('2-images-beside-text-centered', async ({ page }) => {
  167 |         await setup(page, '/inhaltselemente/textmedia/pixel-bilder/2-bilder-neben-text-zentriert/');
  168 |         await hideElements(page, PAGE_HEADER);
  169 |         await scrollToBottom(page);
  170 |         await expect(page).toHaveScreenshot(snap('content-textmedia-pixel-2-images-beside-text-centered'));
  171 |     });
  172 | 
  173 |     test('2-images-beside-text', async ({ page }) => {
  174 |         await setup(page, '/inhaltselemente/textmedia/pixel-bilder/2-bilder-neben-text/');
  175 |         await hideElements(page, PAGE_HEADER);
  176 |         await scrollToBottom(page);
> 177 |         await expect(page).toHaveScreenshot(snap('content-textmedia-pixel-2-images-beside-text'));
      |                            ^ Error: expect(page).toHaveScreenshot(expected) failed
  178 |     });
  179 | 
  180 |     test('1-image-beside-text-centered-33-percent', async ({ page }) => {
  181 |         await setup(page, '/inhaltselemente/textmedia/pixel-bilder/1-bild-neben-text-zentriert-33-bildbreite/');
  182 |         await hideElements(page, PAGE_HEADER);
  183 |         await scrollToBottom(page);
  184 |         await expect(page).toHaveScreenshot(snap('content-textmedia-pixel-1-image-beside-text-centered-33-percent'));
  185 |     });
  186 | 
  187 |     test('1-image-beside-text-33-percent', async ({ page }) => {
  188 |         await setup(page, '/inhaltselemente/textmedia/pixel-bilder/1-bild-neben-text-33-bildbreite/');
  189 |         await hideElements(page, PAGE_HEADER);
  190 |         await scrollToBottom(page);
  191 |         await expect(page).toHaveScreenshot(snap('content-textmedia-pixel-1-image-beside-text-33-percent'));
  192 |     });
  193 | });
  194 | 
  195 | test.describe('content › textmedia › svg-images', () => {
  196 |     test('1-image-top-bottom-centered', async ({ page }) => {
  197 |         await setup(page, '/inhaltselemente/textmedia/svg-bilder/1-bild-oben-unten-zentriert/');
  198 |         await expect(page).toHaveScreenshot(snap('content-textmedia-svg-1-image-top-bottom-centered'));
  199 |     });
  200 | 
  201 |     test('1-image-beside-text-centered', async ({ page }) => {
  202 |         await setup(page, '/inhaltselemente/textmedia/svg-bilder/1-bild-neben-text-zentriert/');
  203 |         await expect(page).toHaveScreenshot(snap('content-textmedia-svg-1-image-beside-text-centered'));
  204 |     });
  205 | 
  206 |     test('1-image-beside-text', async ({ page }) => {
  207 |         await setup(page, '/inhaltselemente/textmedia/svg-bilder/1-bild-neben-text/');
  208 |         await expect(page).toHaveScreenshot(snap('content-textmedia-svg-1-image-beside-text'));
  209 |         await setDarkTheme(page);
  210 |         await expect(page).toHaveScreenshot(snap('content-textmedia-svg-1-image-beside-text-dark'));
  211 |     });
  212 | 
  213 |     test('2-images-top-bottom-centered', async ({ page }) => {
  214 |         await setup(page, '/inhaltselemente/textmedia/svg-bilder/2-bilder-oben-unten-zentriert/');
  215 |         await expect(page).toHaveScreenshot(snap('content-textmedia-svg-2-images-top-bottom-centered'));
  216 |     });
  217 | 
  218 |     test('2-images-beside-text-centered', async ({ page }) => {
  219 |         await setup(page, '/inhaltselemente/textmedia/svg-bilder/2-bilder-neben-text-zentriert/');
  220 |         await expect(page).toHaveScreenshot(snap('content-textmedia-svg-2-images-beside-text-centered'));
  221 |     });
  222 | 
  223 |     test('2-images-beside-text', async ({ page }) => {
  224 |         await setup(page, '/inhaltselemente/textmedia/svg-bilder/2-bilder-neben-text/');
  225 |         await expect(page).toHaveScreenshot(snap('content-textmedia-svg-2-images-beside-text'));
  226 |     });
  227 | 
  228 |     test('1-image-beside-text-centered-33-percent', async ({ page }) => {
  229 |         await setup(page, '/inhaltselemente/textmedia/svg-bilder/1-bild-neben-text-zentriert-33-bildbreite/');
  230 |         await expect(page).toHaveScreenshot(snap('content-textmedia-svg-1-image-beside-text-centered-33-percent'));
  231 |     });
  232 | 
  233 |     test('1-image-beside-text-33-percent', async ({ page }) => {
  234 |         await setup(page, '/inhaltselemente/textmedia/svg-bilder/1-bild-neben-text-33-bildbreite/');
  235 |         await expect(page).toHaveScreenshot(snap('content-textmedia-svg-1-image-beside-text-33-percent'));
  236 |     });
  237 | });
  238 | 
  239 | test.describe('content › textmedia › extern-videos', () => {
  240 |     test('1-video-top-bottom-centered', async ({ page }) => {
  241 |         await setup(page, '/inhaltselemente/textmedia/videos-extern/1-video-oben-unten-zentriert/');
  242 |         await hideElements(page, PAGE_HEADER);
  243 |         await scrollToBottom(page);
  244 |         await expect(page).toHaveScreenshot(snap('content-textmedia-extern-1-video-top-bottom-centered'));
  245 |     });
  246 | 
  247 |     test('1-video-beside-text-centered', async ({ page }) => {
  248 |         await setup(page, '/inhaltselemente/textmedia/videos-extern/1-video-neben-text-zentriert/');
  249 |         await hideElements(page, PAGE_HEADER);
  250 |         await scrollToBottom(page);
  251 |         await expect(page).toHaveScreenshot(snap('content-textmedia-extern-1-video-beside-text-centered'));
  252 |     });
  253 | 
  254 |     test('1-video-beside-text', async ({ page }) => {
  255 |         await setup(page, '/inhaltselemente/textmedia/videos-extern/1-video-neben-text/');
  256 |         await hideElements(page, PAGE_HEADER);
  257 |         await scrollToBottom(page);
  258 |         await expect(page).toHaveScreenshot(snap('content-textmedia-extern-1-video-beside-text'));
  259 |     });
  260 | 
  261 |     test('2-videos-top-bottom-centered', async ({ page }) => {
  262 |         await setup(page, '/inhaltselemente/textmedia/videos-extern/2-videos-oben-unten-zentriert/');
  263 |         await hideElements(page, PAGE_HEADER);
  264 |         await scrollToBottom(page);
  265 |         await expect(page).toHaveScreenshot(snap('content-textmedia-extern-2-videos-top-bottom-centered'));
  266 |     });
  267 | 
  268 |     test('2-videos-beside-text-centered', async ({ page }) => {
  269 |         await setup(page, '/inhaltselemente/textmedia/videos-extern/2-videos-neben-text-zentriert/');
  270 |         await hideElements(page, PAGE_HEADER);
  271 |         await scrollToBottom(page);
  272 |         await expect(page).toHaveScreenshot(snap('content-textmedia-extern-2-videos-beside-text-centered'));
  273 |     });
  274 | 
  275 |     test('2-videos-beside-text', async ({ page }) => {
  276 |         await setup(page, '/inhaltselemente/textmedia/videos-extern/2-videos-neben-text/');
  277 |         await hideElements(page, PAGE_HEADER);
```