diff --git a/app/(auth)/layout.tsx b/app/(auth)/layout.tsx
index 0b6cf1f4ad6173e8bfbe529605af4714390e3b12..10b94341a2d8696b665d751074a5f8af0c9a354f 100644
--- a/app/(auth)/layout.tsx
+++ b/app/(auth)/layout.tsx
@@ -1,7 +1,37 @@
+import { GameUnityLogo } from "@/components/logo"
+import { AspectRatio } from "@/components/ui/aspect-ratio"
+import { siteConfig } from "@/lib/config/site"
+import Image from "next/image"
+import Link from 'next/link'
+
 interface AuthLayoutProps {
     children: React.ReactNode
 }
 
 export default function AuthLayout({ children }: AuthLayoutProps) {
-    return <div className="min-h-screen">{children}</div>
+    return (
+        <div className="grid min-h-screen grid-cols-1 overflow-hidden md:grid-cols-3 lg:grid-cols-2">
+            <AspectRatio ratio={16 / 9}>
+                <Image
+                    src="/auth-image.png"
+                    alt="Play a game together"
+                    fill
+                    className="absolute inset-0 object-cover"
+                    priority
+                    sizes="(max-width: 768px) 100vw, (max-width: 1200px) 50vw, 33vw"
+                />
+                <div className="absolute inset-0 bg-gradient-to-t from-background to-background/60 md:to-background/40" />
+                <Link
+                    href="/home"
+                    className="absolute left-8 top-6 z-20 flex items-center text-lg font-bold tracking-tight"
+                >
+                    <GameUnityLogo className="mr-2 h-6 w-6" aria-hidden="true" />
+                    <span>{siteConfig.name}</span>
+                </Link>
+            </AspectRatio>
+            <main className="container absolute top-1/2 col-span-1 flex -translate-y-1/2 items-center md:static md:top-0 md:col-span-2 md:flex md:translate-y-0 lg:col-span-1">
+                {children}
+            </main>
+        </div>
+    )
 }
\ No newline at end of file
diff --git a/app/(auth)/login/page.tsx b/app/(auth)/login/page.tsx
index 5cadd641771412cd575c1c1fb9ed2691fbe37311..25e355ff0afc835788a27815a7433b76fddab880 100644
--- a/app/(auth)/login/page.tsx
+++ b/app/(auth)/login/page.tsx
@@ -1,8 +1,5 @@
-import { Icons } from '@/components/icons'
-import { GameUnityLogo } from '@/components/logo'
-import { buttonVariants } from '@/components/ui/button'
+import { Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle } from '@/components/ui/card'
 import { UserAuthForm } from '@/components/user-auth-form'
-import { cn } from '@/lib/utils'
 import Link from 'next/link'
 
 export const metadata = {
@@ -12,39 +9,32 @@ export const metadata = {
 
 export default function LoginPage() {
     return (
-        <div className="container flex min-h-screen w-screen flex-col items-center justify-center">
-            <Link
-                href="/"
-                className={cn(
-                    buttonVariants({ variant: "ghost" }),
-                    "absolute left-4 top-4 md:left-8 md:top-8"
-                )}
-            >
-                <>
-                    <Icons.chevronLeft />
-                    Back
-                </>
-            </Link>
-            <div className="mx-auto flex w-full flex-col justify-center space-y-6 sm:w-[350px]">
-                <div className="flex flex-col items-center space-y-2 text-center">
-                    <GameUnityLogo className="h-10 w-10" />
-                    <h1 className="text-2xl font-semibold tracking-tight">
-                        Welcome back
-                    </h1>
-                    <p className="text-sm text-muted-foreground">
-                        Enter your email to sign in to your account
-                    </p>
-                </div>
-                <UserAuthForm type='login' />
-                <p className="px-8 text-center text-sm text-muted-foreground">
-                    <Link
-                        href="/signup"
-                        className="hover:text-brand underline underline-offset-4"
-                    >
-                        Don&apos;t have an account? Sign Up
-                    </Link>
-                </p>
-            </div>
+        <div className="container grid items-center gap-8 pb-8 pt-6 md:py-8 max-w-lg">
+            <Card>
+                <CardHeader className="space-y-1">
+                    <CardTitle className="text-2xl">Sign in</CardTitle>
+                    <CardDescription>
+                        Choose your preferred sign in method
+                    </CardDescription>
+                </CardHeader>
+                <CardContent className="grid gap-4">
+                    <UserAuthForm type='login' />
+                </CardContent>
+                <CardFooter className="flex flex-wrap items-center justify-between gap-2">
+                    <div className="text-sm text-muted-foreground">
+                        <span className="mr-1 hidden sm:inline-block">
+                            Don&apos;t have an account?
+                        </span>
+                        <Link
+                            aria-label="Sign up"
+                            href="/signup"
+                            className="text-primary underline-offset-4 transition-colors hover:underline"
+                        >
+                            Sign up
+                        </Link>
+                    </div>
+                </CardFooter>
+            </Card>
         </div>
     )
 }
\ No newline at end of file
diff --git a/app/(auth)/signup/page.tsx b/app/(auth)/signup/page.tsx
index c35601883d1af6559b71b6e63844db02609f2a0b..4cc41c5b6d721cd67904b9b5ba9b16c32e8681d9 100644
--- a/app/(auth)/signup/page.tsx
+++ b/app/(auth)/signup/page.tsx
@@ -1,6 +1,6 @@
 import { Icons } from '@/components/icons'
-import { GameUnityLogo } from '@/components/logo'
 import { buttonVariants } from '@/components/ui/button'
+import { Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle } from '@/components/ui/card'
 import { UserAuthForm } from '@/components/user-auth-form'
 import { cn } from '@/lib/utils'
 import Link from 'next/link'
@@ -12,61 +12,32 @@ export const metadata = {
 
 export default function SignupPage() {
     return (
-        <div className="container grid h-screen w-screen flex-col items-center justify-center lg:max-w-none lg:grid-cols-2 lg:px-0">
-            <Link
-                href="/"
-                className={cn(
-                    buttonVariants({ variant: "ghost" }),
-                    "absolute left-4 top-4 md:left-8 md:top-8"
-                )}
-            >
-                <>
-                    <Icons.chevronLeft />
-                    Back
-                </>
-            </Link>
-            <Link
-                href="/login"
-                className={cn(
-                    buttonVariants({ variant: "ghost" }),
-                    "absolute right-4 top-4 md:right-8 md:top-8"
-                )}
-            >
-                Login
-            </Link>
-            <div className="hidden h-full bg-muted lg:block" />
-            <div className="lg:p-8">
-                <div className="mx-auto flex w-full flex-col justify-center space-y-6 sm:w-[350px]">
-                    <div className="flex flex-col items-center space-y-2 text-center">
-                        <GameUnityLogo className="h-10 w-10" />
-
-                        <h1 className="text-2xl font-semibold tracking-tight">
-                            Create an account
-                        </h1>
-                        <p className="text-sm text-muted-foreground">
-                            Give yourself a username, enter your email and password below to create an account
-                        </p>
-                    </div>
+        <div className="container grid items-center gap-8 pb-8 pt-6 md:py-8 max-w-lg">
+            <Card>
+                <CardHeader className="space-y-1">
+                    <CardTitle className="text-2xl">Sign up</CardTitle>
+                    <CardDescription>
+                        Give yourself a username, enter your email and password below to create an account
+                    </CardDescription>
+                </CardHeader>
+                <CardContent className="grid gap-4">
                     <UserAuthForm type='signup' />
-                    <p className="px-8 text-center text-sm text-muted-foreground">
-                        By clicking continue, you agree to our{" "}
+                </CardContent>
+                <CardFooter className="flex flex-wrap items-center justify-between gap-2">
+                    <div className="text-sm text-muted-foreground">
+                        <span className="mr-1 hidden sm:inline-block">
+                            Already have an account?{" "}
+                        </span>
                         <Link
-                            href="/terms"
-                            className="hover:text-brand underline underline-offset-4"
+                            aria-label="Sign in"
+                            href="/login"
+                            className="text-primary underline-offset-4 transition-colors hover:underline"
                         >
-                            Terms of Service
-                        </Link>{" "}
-                        and{" "}
-                        <Link
-                            href="/privacy"
-                            className="hover:text-brand underline underline-offset-4"
-                        >
-                            Privacy Policy
+                            Sign in
                         </Link>
-                        .
-                    </p>
-                </div>
-            </div>
+                    </div>
+                </CardFooter>
+            </Card>
         </div>
     )
 }
\ No newline at end of file
diff --git a/app/(auth)/verify/page.tsx b/app/(auth)/verify/page.tsx
index 7cac28a401f67fa10028bb40232a62f8c40d0cab..6ed8bcfd0b983c8d99245fe39b21cf2c5e0ba11b 100644
--- a/app/(auth)/verify/page.tsx
+++ b/app/(auth)/verify/page.tsx
@@ -1,24 +1,25 @@
-import { GameUnityLogo } from "@/components/logo"
 import { buttonVariants } from "@/components/ui/button"
+import { Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle } from '@/components/ui/card'
 import { cn } from "@/lib/utils"
 import Link from "next/link"
 
 export default function EmailVerification() {
     return (
-        <div className="container flex max-w-[64rem] flex-col items-center gap-4 text-center">
-            <div className="flex items-center">
-                <Link href="/home" className={cn("rounded-full p-3 hover:bg-accent")}>
-                    <GameUnityLogo className="h-10 w-10" />
-                </Link>
-            </div>
-            <p className="max-w-[42rem] leading-normal sm:text-xl sm:leading-8">
-                Your Email has been Verified and your Account was Activated <br /> You can now login
-            </p>
-            <div className="align-middle">
-                <Link href="/login" className={cn(buttonVariants({ size: "lg" }), "mr-6")}>
-                    Login
-                </Link>
-            </div>
+        <div className="container grid items-center gap-8 pb-8 pt-6 md:py-8 max-w-lg">
+            <Card>
+                <CardHeader className="space-y-1">
+                    <CardTitle className="text-2xl">Email Verified</CardTitle>
+                    <CardDescription>
+                        <span>Your Email has been Verified and your Account was Activated.</span>
+                    </CardDescription>
+                </CardHeader>
+                <CardContent className="grid gap-4 pt-6">
+                    <span>You can now continue to login.</span>
+                    <Link href="/login" className={cn(buttonVariants())} type="submit">
+                        Login
+                    </Link>
+                </CardContent>
+            </Card>
         </div>
     )
 }
\ No newline at end of file
diff --git a/app/(content)/(gaming)/games/[gameid]/page.tsx b/app/(content)/(gaming)/games/[gameid]/page.tsx
index 8ae2d7623ae3bb014c185102658d1459ea5e3889..ef0ed17e93b9fd7bb362e6bd1e2e1664c4f661dc 100644
--- a/app/(content)/(gaming)/games/[gameid]/page.tsx
+++ b/app/(content)/(gaming)/games/[gameid]/page.tsx
@@ -20,7 +20,7 @@ export default async function GameDetail({ params }: { params: { gameid: string
     if (!data[0]) return <TryAgain />
 
     // TODO put to backend
-    const date = formatDate(data[0].first_release_date * 1000)
+    const date = data[0].first_release_date && formatDate(data[0].first_release_date * 1000)
 
     const user = await getCurrentUser()
     const fullUser = await db.user.findFirst({
@@ -50,7 +50,7 @@ export default async function GameDetail({ params }: { params: { gameid: string
                         <AspectRatio ratio={889 / 500}>
                             <Image
                                 src={data[0].screenshots[0]?.url ?? ""}
-                                alt={data[0].name}
+                                alt={data[0].name ?? ""}
                                 fill
                                 priority
                                 className="object-center" />
@@ -60,8 +60,8 @@ export default async function GameDetail({ params }: { params: { gameid: string
                         <div className="aspect-[264/374]">
                             <Card className="aspect-[264/374] relative block group -mt-36 w-52 flex-shrink-0">
                                 <Image
-                                    src={data[0].cover.url}
-                                    alt={data[0].name}
+                                    src={data[0].cover.url ?? ""}
+                                    alt={data[0].name ?? ""}
                                     fill
                                     priority
                                     className="object-cover rounded-lg" />
@@ -77,29 +77,35 @@ export default async function GameDetail({ params }: { params: { gameid: string
                         </div>
 
                         <div className="ml-6 md:ml-12 space-y-3">
-                            <h1 className="text-2xl font-bold">{data[0].name}</h1>
-                            <h1>released on{' '}
-                                <span className="font-semibold">{date}</span> by{' '}
-                                <span className="font-semibold">{companies}</span>
-                            </h1>
-                            <h1 className="pt-3">{data[0].summary}</h1>
+                            <h1 className="text-2xl font-bold">{data[0].name ?? ""}</h1>
+                            {date && companies &&
+                                <h1>released on{' '}
+                                    <span className="font-semibold">{date}</span> by{' '}
+                                    <span className="font-semibold">{companies}</span>
+                                </h1>
+                            }
+                            <h1 className="pt-3">{data[0].summary ?? ""}</h1>
 
                             <div className="pt-6">
 
                                 <h1 className="mb-2">Genres</h1>
-                                <div className="flex flex-wrap gap-2">
-                                    {data[0].genres.map((genre, i) => {
-                                        return <Button key={i} variant="outline" size="lg" className="px-6 py-3">{genre.name}</Button>
-                                    })}
-                                </div>
+                                {data[0].genres && data[0].genres.length === 0 &&
+                                    <div className="flex flex-wrap gap-2">
+                                        {data[0].genres.map((genre, i) => {
+                                            return <Button key={i} variant="outline" size="lg" className="px-6 py-3">{genre.name}</Button>
+                                        })}
+                                    </div>
+                                }
                             </div>
                             <div className="pt-6">
                                 <h1 className="mb-2">Platforms</h1>
-                                <div className="flex flex-wrap gap-2">
-                                    {data[0].platforms.map((platform, i) => {
-                                        return <Button key={i} variant="outline" size="lg" className="px-6 py-3">{platform.name}</Button>
-                                    })}
-                                </div>
+                                {data[0].platforms && data[0].platforms.length === 0 &&
+                                    <div className="flex flex-wrap gap-2">
+                                        {data[0].platforms.map((platform, i) => {
+                                            return <Button key={i} variant="outline" size="lg" className="px-6 py-3">{platform.name}</Button>
+                                        })}
+                                    </div>
+                                }
                             </div>
                         </div>
                     </div>
diff --git a/components/search/components/search-input.tsx b/components/search/components/search-input.tsx
index 628763314c2921837661c0c1caa6c380bcf809a9..d5be323eabddd5667a56b614af33a0419bfcead9 100644
--- a/components/search/components/search-input.tsx
+++ b/components/search/components/search-input.tsx
@@ -25,7 +25,7 @@ export default function SearchInput({ className, ...props }: DocsSearchProps) {
     function onSearch(event: React.FormEvent) {
         event.preventDefault()
 
-        if (pathname === "/games") {
+        if (pathname.startsWith("/games")) {
             if (!searchQuery) {
                 router.push(pathname)
                 return