diff --git a/web/app/components/plugins/marketplace/creator-profile/__tests__/view-layout.browser.spec.tsx b/web/app/components/plugins/marketplace/creator-profile/__tests__/view-layout.browser.spec.tsx
new file mode 100644
index 00000000000..ae7959e16aa
--- /dev/null
+++ b/web/app/components/plugins/marketplace/creator-profile/__tests__/view-layout.browser.spec.tsx
@@ -0,0 +1,64 @@
+import type { CreatorProfileViewModel } from '../model'
+import { render } from 'vitest-browser-react'
+import CreatorProfileView from '../view'
+
+vi.mock('#i18n', async () => {
+ const { withSelectorKey } = await import('@/test/i18n-mock')
+
+ return {
+ useTranslation: () => ({
+ t: withSelectorKey((key: string) => key),
+ }),
+ }
+})
+
+vi.mock('../creator-sidebar', () => ({
+ default: () => ,
+}))
+
+vi.mock('../creator-content', () => ({
+ default: () => (
+
+ ),
+}))
+
+const profile: CreatorProfileViewModel = {
+ profile: {
+ kind: 'individual',
+ displayName: 'Creator',
+ handle: 'creator',
+ avatarUrl: '',
+ backgroundUrl: '',
+ badges: [],
+ socialLinks: [],
+ },
+ creations: [],
+}
+
+describe('CreatorProfileView layout', () => {
+ it('keeps the profile background behind content taller than its scrollport', async () => {
+ const screen = await render(
+
+ ({ type: 'link', href: '/' })}
+ />
+
,
+ )
+
+ const scrollport = screen.getByTestId('creator-scrollport').element()
+ const profileRoot = scrollport.firstElementChild as HTMLElement
+ const creations = screen.getByTestId('creator-creations').element()
+
+ expect(profileRoot.getBoundingClientRect().bottom).toBeGreaterThanOrEqual(
+ creations.getBoundingClientRect().bottom,
+ )
+ })
+})
diff --git a/web/app/components/plugins/marketplace/creator-profile/view.tsx b/web/app/components/plugins/marketplace/creator-profile/view.tsx
index a5554b2de50..ebae19c187e 100644
--- a/web/app/components/plugins/marketplace/creator-profile/view.tsx
+++ b/web/app/components/plugins/marketplace/creator-profile/view.tsx
@@ -27,7 +27,7 @@ export default function CreatorProfileView({
const { t } = useTranslation()
return (
-