feat: socials grid, cookie consent (GDPR/CCPA/PIPEDA), privacy & terms pages, enhanced SEO meta tags
- index.tsx: full socials section (YouTube, X, Instagram, Facebook, TikTok, Patreon) - index.tsx: enhanced meta description + keywords - _document.tsx: global meta keywords, proper OG image dimensions, twitter:creator - _app.tsx: cookie consent component mounted globally - CookieConsent.tsx: GDPR/CCPA/PIPEDA compliant banner with accept/decline + localStorage + GA disable - pages/privacy.tsx: full Privacy Policy (GDPR, CCPA/CPRA, PIPEDA sections) - pages/terms.tsx: Terms & Conditions (IP, governing law NE, disclaimers) - Home.module.css: socialGrid/socialBtn styles, footerLinks, legal page styles - footer: Privacy Policy + Terms links on all pages
This commit is contained in:
@@ -410,10 +410,109 @@
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
/* ── Social buttons ──────────────────────────────────────────────────────── */
|
||||
.socialGrid {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 0.75rem;
|
||||
justify-content: center;
|
||||
margin-top: 1.75rem;
|
||||
}
|
||||
|
||||
.socialBtn {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
gap: 0.5rem;
|
||||
padding: 0.65rem 1.25rem;
|
||||
background: var(--dark-card);
|
||||
color: var(--bone-dim);
|
||||
border: 1px solid var(--border);
|
||||
font-size: 0.8rem;
|
||||
letter-spacing: 0.08em;
|
||||
text-transform: uppercase;
|
||||
transition: border-color 0.2s, color 0.2s, background 0.2s;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.socialBtn:hover {
|
||||
border-color: var(--red);
|
||||
color: var(--bone);
|
||||
background: rgba(192, 57, 43, 0.08);
|
||||
}
|
||||
|
||||
/* ── Footer links ────────────────────────────────────────────────────────── */
|
||||
.footerLinks {
|
||||
display: flex;
|
||||
gap: 1.5rem;
|
||||
font-size: 0.75rem;
|
||||
color: var(--bone-dim);
|
||||
opacity: 0.7;
|
||||
}
|
||||
|
||||
.footerLinks a:hover {
|
||||
opacity: 1;
|
||||
color: var(--bone);
|
||||
}
|
||||
|
||||
/* ── Legal pages (privacy / terms) ──────────────────────────────────────── */
|
||||
.legal {
|
||||
max-width: 820px;
|
||||
margin: 0 auto;
|
||||
padding: 8rem 2.5rem 6rem;
|
||||
}
|
||||
|
||||
.legalTitle {
|
||||
font-family: var(--font-display);
|
||||
font-size: clamp(1.8rem, 3.5vw, 2.8rem);
|
||||
color: var(--bone);
|
||||
margin-bottom: 0.5rem;
|
||||
}
|
||||
|
||||
.legalUpdated {
|
||||
font-size: 0.75rem;
|
||||
color: var(--bone-dim);
|
||||
opacity: 0.5;
|
||||
margin-bottom: 3rem;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.legalSection {
|
||||
margin-bottom: 2.5rem;
|
||||
}
|
||||
|
||||
.legalSection h2 {
|
||||
font-family: var(--font-display);
|
||||
font-size: 1.15rem;
|
||||
color: var(--bone);
|
||||
margin-bottom: 0.75rem;
|
||||
padding-bottom: 0.4rem;
|
||||
border-bottom: 1px solid var(--border);
|
||||
}
|
||||
|
||||
.legalSection p,
|
||||
.legalSection li {
|
||||
font-size: 0.9rem;
|
||||
color: var(--bone-dim);
|
||||
line-height: 1.8;
|
||||
margin-bottom: 0.75rem;
|
||||
}
|
||||
|
||||
.legalSection ul {
|
||||
padding-left: 1.5rem;
|
||||
}
|
||||
|
||||
.legalSection a {
|
||||
color: var(--red);
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
/* ── Responsive ──────────────────────────────────────────────────────────── */
|
||||
@media (max-width: 768px) {
|
||||
.nav { padding: 1rem 1.25rem; }
|
||||
.navLinks { display: none; }
|
||||
.about { grid-template-columns: 1fr; gap: 2.5rem; }
|
||||
.footer { flex-direction: column; text-align: center; }
|
||||
.footerLinks { justify-content: center; }
|
||||
.socialGrid { gap: 0.5rem; }
|
||||
.legal { padding: 6rem 1.25rem 4rem; }
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user