feat: brand identity v1.0.0 — Direction C Trusted Guide (theme v2.0.0-alpha.1)

Implements weeks 1–4 of the CMO brand identity sprint.

Key changes:
- CSS token system (assets/css/brand.css): full palette, verdict tokens, component styles
- Poppins/Inter/IBM Plex Mono Google Fonts loading with preload
- Full favicon/PWA/OG asset pack (peptide-repo-brand v1.0.0)
- 5-state verdict badge + card + evidence row components
- verdict_state + signal_row post meta on pr_peptide CPT
- Homepage hero: teal bg, new H1/subhead, lime search bar
- Archive verdict filter chips (CSS + pre_get_posts query hook)
- Affiliate disclosure component (3 contexts)
- page-how-we-review.php + page-about.php templates
- Footer Our Method links
- a11y: skip-to-content, reduced-motion, aria on verdict badges

QA: PASS (0 blockers) — qa-reviews/peptide-starter-theme/2026-04-26-a2bff59.md
Staging verified: https://staging.peptiderepo.com
This commit is contained in:
peptiderepo
2026-04-26 02:59:00 +07:00
committed by GitHub
parent e40602d58c
commit e23c141009
39 changed files with 894 additions and 4 deletions

BIN
assets/brand/apple-touch-icon.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

BIN
assets/brand/favicon-16.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 481 B

BIN
assets/brand/favicon-32.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 906 B

BIN
assets/brand/favicon-48.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
assets/brand/icon-192.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

BIN
assets/brand/icon-512.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -0,0 +1,7 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 360 96" role="img" aria-label="Peptide Repo">
<rect x="8" y="8" width="80" height="80" rx="16" fill="#FFFFFF"/>
<text x="48" y="58" text-anchor="middle" font-family="Poppins, sans-serif" font-weight="700" font-size="38" fill="#1B8A92" letter-spacing="1">PR</text>
<circle cx="82" cy="82" r="14" fill="#7FD600"/>
<path d="M 76 82 l 4 4 l 8 -8" stroke="#0D0D0D" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" fill="none"/>
<text x="108" y="58" font-family="Poppins, sans-serif" font-weight="700" font-size="30" fill="#FFFFFF" letter-spacing="-0.5">Peptide Repo</text>
</svg>

After

Width:  |  Height:  |  Size: 652 B

View File

@@ -0,0 +1,7 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 360 96" role="img" aria-label="Peptide Repo">
<rect x="8" y="8" width="80" height="80" rx="16" fill="#1B8A92"/>
<text x="48" y="58" text-anchor="middle" font-family="Poppins, sans-serif" font-weight="700" font-size="38" fill="#FFFFFF" letter-spacing="1">PR</text>
<circle cx="82" cy="82" r="14" fill="#7FD600"/>
<path d="M 76 82 l 4 4 l 8 -8" stroke="#0D0D0D" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" fill="none"/>
<text x="108" y="58" font-family="Poppins, sans-serif" font-weight="700" font-size="30" fill="#FFFFFF" letter-spacing="-0.5">Peptide Repo</text>
</svg>

After

Width:  |  Height:  |  Size: 652 B

View File

@@ -0,0 +1,7 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 360 96" role="img" aria-label="Peptide Repo">
<rect x="8" y="8" width="80" height="80" rx="16" fill="#1B8A92"/>
<text x="48" y="58" text-anchor="middle" font-family="Poppins, sans-serif" font-weight="700" font-size="38" fill="#FFFFFF" letter-spacing="1">PR</text>
<circle cx="82" cy="82" r="14" fill="#7FD600"/>
<path d="M 76 82 l 4 4 l 8 -8" stroke="#0D0D0D" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" fill="none"/>
<text x="108" y="58" font-family="Poppins, sans-serif" font-weight="700" font-size="30" fill="#0D0D0D" letter-spacing="-0.5">Peptide Repo</text>
</svg>

After

Width:  |  Height:  |  Size: 652 B

View File

@@ -0,0 +1,5 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 80 80" role="img" aria-label="Peptide Repo">
<rect x="0" y="0" width="72" height="72" rx="14" fill="#1B8A92"/>
<text x="36" y="52" text-anchor="middle" font-family="Poppins, sans-serif" font-weight="700" font-size="38" fill="#FFFFFF" letter-spacing="0.5">PR</text>
<circle cx="66" cy="66" r="13" fill="#7FD600"/>
</svg>

After

Width:  |  Height:  |  Size: 378 B

6
assets/brand/logo-mark.svg Executable file
View File

@@ -0,0 +1,6 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 80 80" role="img" aria-label="Peptide Repo">
<rect x="0" y="0" width="72" height="72" rx="14" fill="#1B8A92"/>
<text x="36" y="51" text-anchor="middle" font-family="Poppins, sans-serif" font-weight="700" font-size="34" fill="#FFFFFF" letter-spacing="0.5">PR</text>
<circle cx="66" cy="66" r="13" fill="#7FD600"/>
<path d="M 60.5 66.5 l 3.5 3.5 l 7.5 -7.5" stroke="#0D0D0D" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" fill="none"/>
</svg>

After

Width:  |  Height:  |  Size: 518 B

8
assets/brand/logo-mono.svg Executable file
View File

@@ -0,0 +1,8 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 360 96" role="img" aria-label="Peptide Repo">
<rect x="8" y="8" width="80" height="80" rx="16" fill="#0D0D0D"/>
<text x="48" y="58" text-anchor="middle" font-family="Poppins, sans-serif" font-weight="700" font-size="38" fill="#FFFFFF" letter-spacing="1">PR</text>
<circle cx="82" cy="82" r="14" fill="#0D0D0D" stroke="#0D0D0D" stroke-width="2"/>
<circle cx="82" cy="82" r="11" fill="#FFFFFF"/>
<path d="M 76 82 l 4 4 l 8 -8" stroke="#0D0D0D" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" fill="none"/>
<text x="108" y="58" font-family="Poppins, sans-serif" font-weight="700" font-size="30" fill="#0D0D0D" letter-spacing="-0.5">Peptide Repo</text>
</svg>

After

Width:  |  Height:  |  Size: 736 B

View File

@@ -0,0 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 280 56" role="img" aria-label="Peptide Repo">
<text x="0" y="40" font-family="Poppins, sans-serif" font-weight="700" font-size="36" fill="#FFFFFF" letter-spacing="-0.5">Peptide Repo</text>
</svg>

After

Width:  |  Height:  |  Size: 250 B

3
assets/brand/logo-wordmark.svg Executable file
View File

@@ -0,0 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 280 56" role="img" aria-label="Peptide Repo">
<text x="0" y="40" font-family="Poppins, sans-serif" font-weight="700" font-size="36" fill="#0D0D0D" letter-spacing="-0.5">Peptide Repo</text>
</svg>

After

Width:  |  Height:  |  Size: 250 B

BIN
assets/brand/og-default.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

30
assets/brand/og-default.svg Executable file
View File

@@ -0,0 +1,30 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 630" role="img" aria-label="Peptide Repo - What the research really says.">
<!-- Background: cream with a subtle teal-corner accent -->
<rect x="0" y="0" width="1200" height="630" fill="#FAFAF7"/>
<rect x="0" y="610" width="1200" height="20" fill="#1B8A92"/>
<!-- Logo lockup, top-left, scaled larger -->
<g transform="translate(80, 80)">
<rect x="0" y="0" width="120" height="120" rx="22" fill="#1B8A92"/>
<text x="60" y="86" text-anchor="middle" font-family="Poppins, sans-serif" font-weight="700" font-size="56" fill="#FFFFFF" letter-spacing="1.5">PR</text>
<circle cx="111" cy="111" r="20" fill="#7FD600"/>
<path d="M 102 111 l 6 6 l 12 -12" stroke="#0D0D0D" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" fill="none"/>
<text x="148" y="80" font-family="Poppins, sans-serif" font-weight="700" font-size="44" fill="#0D0D0D" letter-spacing="-0.8">Peptide Repo</text>
</g>
<!-- Tagline / hero copy -->
<g transform="translate(80, 320)">
<text x="0" y="0" font-family="Poppins, sans-serif" font-weight="700" font-size="84" fill="#0D0D0D" letter-spacing="-2">What the research</text>
<text x="0" y="100" font-family="Poppins, sans-serif" font-weight="700" font-size="84" fill="#1B8A92" letter-spacing="-2">really says.</text>
</g>
<!-- Verdict-state mini-row, bottom-right, signaling the brand's signature taxonomy -->
<g transform="translate(720, 540)" font-family="Inter, sans-serif" font-weight="600" font-size="14">
<rect x="0" y="0" width="120" height="32" rx="16" fill="#1B8A92"/>
<text x="60" y="22" text-anchor="middle" fill="#FFFFFF" letter-spacing="0.4">Established</text>
<rect x="130" y="0" width="120" height="32" rx="16" fill="#7FD600"/>
<text x="190" y="22" text-anchor="middle" fill="#0D0D0D" letter-spacing="0.4">Promising</text>
<rect x="260" y="0" width="160" height="32" rx="16" fill="#FF8A3D"/>
<text x="340" y="22" text-anchor="middle" fill="#0D0D0D" letter-spacing="0.4">Investigational</text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.0 KiB