diff --git a/client/dist.zip b/client/dist.zip
index 77a157fb25f5480675035dfa5761ef43bcf9dd05..eaa80a13eaed090aefcad560cb7d11331976daa9 100644
Binary files a/client/dist.zip and b/client/dist.zip differ
diff --git a/client/index.html b/client/index.html
index e98a9313459f1fafdae226363c1dbb14dfe20e8e..0fbf15b1da78b8c32c79c0b4694ad16f33a26a7a 100644
--- a/client/index.html
+++ b/client/index.html
@@ -1,20 +1,16 @@
 <!doctype html>
 <html lang="en">
+    <head>
+        <meta charset="UTF-8" />
+        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+        <meta name="description" content="Site web de la CQI 2025" />
+        <title>CQI 2025 QEC</title>
+    </head>
 
-<head>
-    <meta charset="UTF-8" />
-    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
-    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-
-    <meta name="description"
-        content="Full-stack SPA template using SolidJS, TypeScript, and Tailwind. Backed by Rust with Axum and PostgreSQL. " />
-    <title>CQI 2025 QEC</title>
-</head>
-
-<body>
-    <noscript>JavaScript must be enabled to view this website.</noscript>
-    <div id="app" />
-    <script type="module" src="./src/index.tsx"></script>
-</body>
-
-</html>
\ No newline at end of file
+    <body>
+        <noscript>JavaScript must be enabled to view this website.</noscript>
+        <div id="app" />
+        <script type="module" src="./src/index.tsx"></script>
+    </body>
+</html>
diff --git a/client/src/index.tsx b/client/src/index.tsx
index 1d4f44c3476cb528518cf3ccfd95d20cbef7daa0..c21777e8bd4f791dfaf1383edf35b4e55cff8980 100644
--- a/client/src/index.tsx
+++ b/client/src/index.tsx
@@ -29,6 +29,7 @@ const ListParticipant = lazy(() => import("./routes/ListParticipant"))
 const ChangePassword = lazy(() => import("./routes/ChangePassword"))
 const ForgottenPassword = lazy(() => import("./routes/ForgottenPassword"))
 const ParticipantInfo = lazy(() => import("./routes/ParticipantInfo"))
+const IndividualPartner = lazy(() => import("./routes/IndividualPartner"))
 
 const app = document.getElementById("app")
 if (app) {
@@ -57,6 +58,7 @@ if (app) {
                     path="/participant-info/:id"
                     component={ParticipantInfo}
                 />
+                <Route path="/partners/:name" component={IndividualPartner} />
                 <Route path="*" component={NotFound} />
             </Router>
         ),
diff --git a/client/src/routes/IndividualPartner.tsx b/client/src/routes/IndividualPartner.tsx
new file mode 100644
index 0000000000000000000000000000000000000000..c179f2cad11290627840052fb64b1dcfdbac7c8d
--- /dev/null
+++ b/client/src/routes/IndividualPartner.tsx
@@ -0,0 +1,47 @@
+import { useParams } from "@solidjs/router"
+import FixedImage from "../components/FixedImage"
+import Goback from "../components/ReturnDashboard"
+import PrefetchLink from "../components/PrefetchLink"
+import { CaretCircleLeft } from "phosphor-solid-js"
+import { t } from "../stores/locale"
+
+export default function Dashboard() {
+    const params = useParams()
+    const partnerName = params.name
+    const partnerDescriptions: any = {
+        Marmen: "Marmen est reconnue pour ses services d’usinage de haute précision, de fabrication et d’assemblage mécanique, de conception et d’ingénierie et est aussi l’un des plus importants fabricants de tours d’éoliennes en Amérique du Nord. Marmen dessert de nombreux marchés, notamment : le spatial, l’hydroélectricité, le nucléaire, défense et militaire, le pétrole et gaz, l’aviation, les mines et aciéries et plusieurs autres. Travailler chez Marmen, c’est faire partie d’une équipe gagnante qui propose des solutions innovantes. Évoluez dans un milieu convivial favorisant le travail d’équipe et le développement du potentiel de chacun!",
+        AEP: "L'Association étudiante de Polytechnique (AEP) est l’organisation qui représente et soutient les personnes étudiantes au premier cycle de Polytechnique Montréal. L’AEP se distingue par son rôle central dans la vie académique, sociale et culturelle de ses membres. Elle est responsable de promouvoir les droits et intérêts des étudiants, de renforcer la communication entre ceux-ci et l’administration, ainsi que de favoriser leur épanouissement sur les plans personnel et professionnel.",
+        Cascades:
+            "Cascades est une entreprise canadienne reconnue pour ses solutions novatrices en matière de récupération, de fabrication de produits d'emballage et de papiers tissus écologiques. Avec plusieurs unités à travers l’Amérique du Nord, Cascades s'engage à promouvoir des pratiques durables et respectueuses de l'environnement. L'entreprise est un acteur majeur dans les secteurs de l'emballage pour les aliments, la protection des produits et les solutions d'hygiène, contribuant ainsi à un avenir plus vert et durable. Respectez votre nature!",
+        OIQ: "Avec plus de 72 000 membres et futur.e.s membres, l’Ordre des ingénieurs du Québec se classe au 2e rang d’importance parmi les 46 ordres professionnels de la province. L’Ordre a pour mission d’encadrer la pratique des ingénieurs et ingénieures et de soutenir la profession afin d’assurer la protection du public. Plus largement, il constitue à la fois l’instance de régulation et la vitrine du génie québécois.",
+        Genium360:
+            "La Compétition Québécoise d’Ingénierie (CQI) est bien plus qu’un défi : c’est une occasion unique pour les esprits novateurs de démontrer leur ingéniosité, leur rigueur et leur créativité. Genium360, partenaire officiel de cette 40e édition, est honorée de célébrer cette relève talentueuse qui façonne l’avenir du génie au Québec.",
+        Excelpro:
+            "Excelpro est un intégrateur de systèmes automatisés, un entrepreneur électrique et un fabricant de panneaux de contrôle. Sa filière Génik tant qu'à elle répond aux défis de production en concevant et en fabriquant des équipements robotisés et automatisés sur mesure, alliant qualité et innovation. Ensemble, Excelpro et Génik contribuent à créer l'industrie de demain.",
+        "Loto-Quebec":
+            "Fondée en 1969, Loto-Québec a pour mission d’encadrer les jeux de hasard et d’argent, tout en les soustrayant au contrôle du crime organisé. Aujourd’hui, nous proposons bien plus qu’une gamme de jeux : des hôtels, restaurants, bars, salles de spectacles, une boîte de nuit et même l’un des plus beaux terrains de golf en Amérique du Nord! Et puisque 100 % de nos profits retournent à la collectivité, quand les Québécois jouent avec nous, c’est tout le Québec qui gagne!",
+    }
+
+    const description =
+        partnerDescriptions[partnerName as any] || "Description not available."
+    return (
+        <div class="flex w-full flex-col items-center justify-center">
+            <FixedImage url="/banners/documents.svg" height="32rem">
+                <h1 class="text-center font-futur text-6xl text-white">
+                    {partnerName}
+                </h1>
+            </FixedImage>
+            <div class="relative -mt-32 flex h-full w-full flex-col items-center justify-center gap-4 p-4 text-justify font-futur text-xl font-bold">
+                <PrefetchLink
+                    to="/partners"
+                    file="Dashboard"
+                    class="absolute left-8 top-0 flex flex-row items-center gap-2"
+                >
+                    <CaretCircleLeft size="2rem" />
+                    <span>{t("dashboard.goback")}</span>
+                </PrefetchLink>
+                <p class="pt-8 text-xl md:w-1/2">{description}</p>
+            </div>
+        </div>
+    )
+}
diff --git a/client/src/routes/Partners.tsx b/client/src/routes/Partners.tsx
index 80e7ca6b2ef58d8fd4c5a4910903ba34cd0645ac..37f9f149f5f38cdaf0e6eae217245c37bcc79a77 100644
--- a/client/src/routes/Partners.tsx
+++ b/client/src/routes/Partners.tsx
@@ -1,4 +1,3 @@
-import clsx from "clsx"
 import FixedImage from "../components/FixedImage"
 import { H1 } from "../components/Text"
 import { t } from "../stores/locale"
@@ -19,22 +18,14 @@ const Partners = () => {
         officiel: ["genium360.png"],
     }
 
-    // Descriptions for partners
-    const partnerDescriptions: any = {
-        "marmen.png":
-            "Marmen est reconnue pour ses services d’usinage de haute précision, de fabrication et d’assemblage mécanique, de conception et d’ingénierie et est aussi l’un des plus importants fabricants de tours d’éoliennes en Amérique du Nord. Marmen dessert de nombreux marchés, notamment : le spatial, l’hydroélectricité, le nucléaire, défense et militaire, le pétrole et gaz, l’aviation, les mines et aciéries et plusieurs autres. Travailler chez Marmen, c’est faire partie d’une équipe gagnante qui propose des solutions innovantes. Évoluez dans un milieu convivial favorisant le travail d’équipe et le développement du potentiel de chacun!",
-        "aep.png":
-            "L'Association étudiante de Polytechnique (AEP) est l’organisation qui représente et soutient les personnes étudiantes au premier cycle de Polytechnique Montréal. L’AEP se distingue par son rôle central dans la vie académique, sociale et culturelle de ses membres. Elle est responsable de promouvoir les droits et intérêts des étudiants, de renforcer la communication entre ceux-ci et l’administration, ainsi que de favoriser leur épanouissement sur les plans personnel et professionnel.",
-        "cascades.png":
-            "Cascades est une entreprise canadienne reconnue pour ses solutions novatrices en matière de récupération, de fabrication de produits d'emballage et de papiers tissus écologiques. Avec plusieurs unités à travers l’Amérique du Nord, Cascades s'engage à promouvoir des pratiques durables et respectueuses de l'environnement. L'entreprise est un acteur majeur dans les secteurs de l'emballage pour les aliments, la protection des produits et les solutions d'hygiène, contribuant ainsi à un avenir plus vert et durable. Respectez votre nature!",
-        "oiq.png":
-            "Avec plus de 72 000 membres et futur.e.s membres, l’Ordre des ingénieurs du Québec se classe au 2e rang d’importance parmi les 46 ordres professionnels de la province. L’Ordre a pour mission d’encadrer la pratique des ingénieurs et ingénieures et de soutenir la profession afin d’assurer la protection du public. Plus largement, il constitue à la fois l’instance de régulation et la vitrine du génie québécois.",
-        "genium360.png":
-            "La Compétition Québécoise d’Ingénierie (CQI) est bien plus qu’un défi : c’est une occasion unique pour les esprits novateurs de démontrer leur ingéniosité, leur rigueur et leur créativité. Genium360, partenaire officiel de cette 40e édition, est honorée de célébrer cette relève talentueuse qui façonne l’avenir du génie au Québec.",
-        "excelpro.png":
-            "Excelpro est un intégrateur de systèmes automatisés, un entrepreneur électrique et un fabricant de panneaux de contrôle. Sa filière Génik tant qu'à elle répond aux défis de production en concevant et en fabriquant des équipements robotisés et automatisés sur mesure, alliant qualité et innovation. Ensemble, Excelpro et Génik contribuent à créer l'industrie de demain.",
-        "lotoquebec.png":
-            "Fondée en 1969, Loto-Québec a pour mission d’encadrer les jeux de hasard et d’argent, tout en les soustrayant au contrôle du crime organisé. Aujourd’hui, nous proposons bien plus qu’une gamme de jeux : des hôtels, restaurants, bars, salles de spectacles, une boîte de nuit et même l’un des plus beaux terrains de golf en Amérique du Nord! Et puisque 100 % de nos profits retournent à la collectivité, quand les Québécois jouent avec nous, c’est tout le Québec qui gagne!",
+    const description: any = {
+        "marmen.png": "Marmen",
+        "aep.png": "AEP",
+        "cascades.png": "Cascades",
+        "oiq.png": "OIQ",
+        "genium360.png": "Genium360",
+        "excelpro.png": "Excelpro",
+        "lotoquebec.png": "Loto-Quebec",
     }
 
     // Order of tiers to display
@@ -95,12 +86,11 @@ const Partners = () => {
                             </h2>
                             <div class="flex flex-wrap gap-8">
                                 {partners[tier].map((partner: any) => (
-                                    <div
-                                        class={clsx(
-                                            "group relative w-full max-w-xs",
-                                            partnerDescriptions[partner] &&
-                                                "transition-all duration-1000 ease-linear hover:h-72",
-                                        )}
+                                    <a
+                                        href={
+                                            description[partner] &&
+                                            "/partners/" + description[partner]
+                                        }
                                     >
                                         <img
                                             src={`/partners/${tier}/${partner}`}
@@ -112,20 +102,7 @@ const Partners = () => {
                                             }
                                             class="object-contain"
                                         />
-                                        {partnerDescriptions[partner] && (
-                                            <div class="absolute inset-0 z-10 flex items-center justify-center opacity-0 transition-opacity duration-300 group-hover:opacity-100">
-                                                <div class="rounded-lg bg-white p-4 shadow-lg">
-                                                    <p class="text-sm">
-                                                        {
-                                                            partnerDescriptions[
-                                                                partner
-                                                            ]
-                                                        }
-                                                    </p>
-                                                </div>
-                                            </div>
-                                        )}
-                                    </div>
+                                    </a>
                                 ))}
                             </div>
                         </div>