diff --git a/docs/merch.md b/docs/merch.md
index 55ee076..65431e7 100644
--- a/docs/merch.md
+++ b/docs/merch.md
@@ -21,3 +21,63 @@ Availability depends on stock, sizing, and shipping at the time — but we will
Have questions? Start a [GitHub Discussion](https://github.com/cpp-linter/cpp-linter/discussions) or open an [issue](https://github.com/cpp-linter/cpp-linter.github.io/issues).
Thanks for supporting cpp-linter!
+
+## About These T-Shirts
+
+These aren't for sale — just something we made for ourselves to wear and promote this open source project. If you've used cpp-linter, appreciate the open source approach, or want to support the project, consider getting one.
+
+
+
+
+
+### White Edition
+
+{: style="max-width: 100%; border-radius: 8px;"}
+
+**Features:**
+
+- "cpp linter" logo with circuit board design
+- "Lint your C/C++ code in workflow" tagline
+
+
+
+
+
+### Black Edition
+
+{: style="max-width: 100%; border-radius: 8px;"}
+
+**Features:**
+
+- "cpp-linter" logo with circuit board design
+- "Lint your C/C++ code in workflow" tagline
+
+
+
+
+
+### Design Gallery
+
+
+
+{: style="max-width: 100%; border-radius: 8px;"}
+
+{: style="max-width: 100%; border-radius: 8px;"}
+
+
+
+### Size Chart
+
+!!! warning "Important: Sizes run small!"
+ Please carefully check the size chart before ordering. **No returns or refunds** after shipping.
+
+| Size | S | M | L | XL | 2XL | 3XL | 4XL | 5XL |
+|------|---|---|---|----|----|-----|-----|-----|
+| **Chest (cm)** | 45 | 47 | 49 | 51 | 53 | 55 | 57 | 59 |
+| **Length (cm)** | 63 | 65 | 67 | 69 | 71 | 73 | 75 | 77 |
+| **Sleeve (cm)** | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 |
+| **Shoulder (cm)** | 40 | 42 | 44 | 46 | 48 | 50 | 52 | 54 |
+| **Height (cm)** | 155 | 160 | 165 | 170 | 175 | 180 | 185 | 190 |
+| **Weight (kg)** | 50± | 55± | 60± | 65± | 75± | 85± | 95± | 105± |
+
+*Note: Measurements are manual and may vary by 1-3cm. Everyone's body is different, so height and weight are for reference only. Since this is a custom product, sizes cannot be changed after ordering.*
diff --git a/docs/static/merch/black-demo.jpg b/docs/static/merch/black-demo.jpg
new file mode 100644
index 0000000..7573b7a
Binary files /dev/null and b/docs/static/merch/black-demo.jpg differ
diff --git a/docs/static/merch/black-front.jpg b/docs/static/merch/black-front.jpg
new file mode 100644
index 0000000..4d5af40
Binary files /dev/null and b/docs/static/merch/black-front.jpg differ
diff --git a/docs/static/merch/white-demo.jpg b/docs/static/merch/white-demo.jpg
new file mode 100644
index 0000000..570aa93
Binary files /dev/null and b/docs/static/merch/white-demo.jpg differ
diff --git a/docs/static/merch/white-front.jpg b/docs/static/merch/white-front.jpg
new file mode 100644
index 0000000..73fe038
Binary files /dev/null and b/docs/static/merch/white-front.jpg differ
diff --git a/docs/stylesheets/extra.css b/docs/stylesheets/extra.css
index 640ca24..d0064cd 100644
--- a/docs/stylesheets/extra.css
+++ b/docs/stylesheets/extra.css
@@ -92,6 +92,41 @@ th {
border-radius: 0.5rem;
}
+/* Merchandise page styling */
+.image-grid {
+ display: grid;
+ grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
+ gap: 2rem;
+ margin: 2rem 0;
+}
+
+.image-grid img {
+ width: 100%;
+ height: auto;
+ object-fit: cover;
+ border-radius: 8px;
+ box-shadow: 0 4px 6px rgba(0,0,0,0.1);
+ transition: transform 0.3s ease, box-shadow 0.3s ease;
+}
+
+.image-grid img:hover {
+ transform: scale(1.05);
+ box-shadow: 0 8px 12px rgba(0,0,0,0.2);
+}
+
+/* Size chart table styling */
+.md-typeset table {
+ font-size: 0.9em;
+}
+
+.md-typeset table th {
+ text-align: center;
+}
+
+.md-typeset table td {
+ text-align: center;
+}
+
/* Button styling improvements */
.md-button {
border-radius: 2rem;
diff --git a/mkdocs.yml b/mkdocs.yml
index 2d5f1f3..785e4c4 100644
--- a/mkdocs.yml
+++ b/mkdocs.yml
@@ -64,6 +64,7 @@ theme:
markdown_extensions:
- admonition
+ - pymdownx.details
- attr_list
- md_in_html
- pymdownx.superfences