-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathprivacy.html
More file actions
261 lines (232 loc) · 8.54 KB
/
privacy.html
File metadata and controls
261 lines (232 loc) · 8.54 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="theme-color" content="#0a0a0a" />
<meta name="robots" content="noindex" />
<title>Privacy & Cookie Policy — @longieirl</title>
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link href="https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700&family=DM+Mono:wght@300;400&family=DM+Sans:wght@300;400&display=swap" rel="stylesheet" />
<link rel="stylesheet" href="style.css" />
<style>
.privacy-wrap {
position: relative;
z-index: 1;
width: 100%;
max-width: 640px;
margin: 0 auto;
padding: 48px 24px 64px;
}
.privacy-back {
display: inline-flex;
align-items: center;
gap: 6px;
font-family: var(--font-mono);
font-size: 11px;
font-weight: 300;
color: var(--text-muted);
text-decoration: none;
letter-spacing: 0.06em;
margin-bottom: 40px;
transition: color 0.2s ease;
}
.privacy-back:hover { color: var(--text-secondary); }
.privacy-title {
font-family: var(--font-display);
font-size: clamp(22px, 5vw, 32px);
font-weight: 700;
color: var(--text-primary);
margin-bottom: 8px;
}
.privacy-updated {
font-family: var(--font-mono);
font-size: 11px;
color: var(--text-muted);
letter-spacing: 0.06em;
margin-bottom: 48px;
}
.privacy-section {
margin-bottom: 40px;
}
.privacy-section h2 {
font-family: var(--font-mono);
font-size: 12px;
font-weight: 400;
color: var(--accent);
letter-spacing: 0.12em;
text-transform: uppercase;
margin-bottom: 14px;
}
.privacy-section p,
.privacy-section li {
font-family: var(--font-body);
font-size: 14px;
font-weight: 300;
color: var(--text-secondary);
line-height: 1.75;
margin-bottom: 10px;
}
.privacy-section ul {
list-style: none;
padding: 0;
}
.privacy-section ul li::before {
content: '— ';
color: var(--text-muted);
}
.privacy-section a {
color: var(--accent);
text-decoration: none;
}
.privacy-section a:hover { text-decoration: underline; }
.privacy-divider {
width: 40px;
height: 1px;
background: var(--border);
margin: 0 0 40px;
}
.cookie-table {
width: 100%;
border-collapse: collapse;
margin-top: 16px;
font-family: var(--font-body);
font-size: 13px;
}
.cookie-table th {
text-align: left;
font-family: var(--font-mono);
font-size: 10px;
font-weight: 400;
color: var(--text-muted);
letter-spacing: 0.08em;
text-transform: uppercase;
padding: 8px 12px;
border-bottom: 1px solid var(--border);
}
.cookie-table td {
padding: 10px 12px;
color: var(--text-secondary);
font-weight: 300;
line-height: 1.5;
border-bottom: 1px solid rgba(255,255,255,0.05);
vertical-align: top;
}
.cookie-table td:first-child {
font-family: var(--font-mono);
font-size: 12px;
color: var(--text-primary);
white-space: nowrap;
}
.cookie-prefs-inline {
display: inline;
background: none;
border: none;
padding: 0;
color: var(--accent);
font-family: var(--font-body);
font-size: 14px;
font-weight: 300;
cursor: pointer;
text-decoration: underline;
}
.cookie-prefs-inline:hover { opacity: 0.8; }
</style>
</head>
<body>
<div class="noise" aria-hidden="true"></div>
<main class="privacy-wrap">
<a class="privacy-back" href="index.html">← back</a>
<h1 class="privacy-title">Privacy & Cookie Policy</h1>
<p class="privacy-updated">Last updated: 25 March 2026</p>
<div class="privacy-divider"></div>
<section class="privacy-section">
<h2>Who we are</h2>
<p>This is the personal links page of <strong>@longieirl</strong>, hosted at <a href="https://longieirl.github.io/linktree/">longieirl.github.io/linktree</a>. It is a static website with no server-side processing and no user accounts.</p>
</section>
<section class="privacy-section">
<h2>What data we collect</h2>
<p>We only collect data if you explicitly consent to analytics cookies. No data is collected by default.</p>
<p>If you accept analytics, <strong>Google Analytics 4</strong> collects:</p>
<ul>
<li>Pages visited and time spent on each page</li>
<li>Referring website or source</li>
<li>Browser type and operating system (aggregated)</li>
<li>Country-level location (derived from a truncated IP address)</li>
</ul>
<p>We do <strong>not</strong> collect names, email addresses, or any directly identifying information. We do not link analytics data to any other Google service.</p>
</section>
<section class="privacy-section">
<h2>Google Analytics configuration</h2>
<p>To minimise data collection, Google Analytics is configured with the following settings:</p>
<ul>
<li><strong>IP anonymisation enabled</strong> — the last octet of your IP address is masked before storage</li>
<li><strong>Advertising features disabled</strong> — Google Signals and ad personalisation signals are turned off</li>
<li><strong>Restricted data processing enabled</strong> — limits how Google may use the data</li>
</ul>
<p>Google's privacy policy is available at <a href="https://policies.google.com/privacy" target="_blank" rel="noopener noreferrer">policies.google.com/privacy</a>. You can opt out of Google Analytics across all sites using the <a href="https://tools.google.com/dlpage/gaoptout" target="_blank" rel="noopener noreferrer">Google Analytics Opt-out Browser Add-on</a>.</p>
</section>
<section class="privacy-section">
<h2>Cookies</h2>
<p>Cookies are small text files stored in your browser. This site uses the following cookies:</p>
<table class="cookie-table">
<thead>
<tr>
<th>Name</th>
<th>Purpose</th>
<th>Duration</th>
<th>Category</th>
</tr>
</thead>
<tbody>
<tr>
<td>cookie_consent</td>
<td>Stores your cookie preference so we don't ask again</td>
<td>1 year (localStorage)</td>
<td>Essential</td>
</tr>
<tr>
<td>_ga</td>
<td>Google Analytics — distinguishes unique visitors</td>
<td>2 years</td>
<td>Analytics</td>
</tr>
<tr>
<td>_ga_*</td>
<td>Google Analytics — maintains session state</td>
<td>2 years</td>
<td>Analytics</td>
</tr>
</tbody>
</table>
<p style="margin-top:16px;">Analytics cookies are only set after you give consent. You can change your preference at any time using the <button class="cookie-prefs-inline" id="privacy-cookie-prefs-btn">Cookie Preferences</button> link.</p>
</section>
<section class="privacy-section">
<h2>Your rights</h2>
<p>Under GDPR and similar laws you have the right to:</p>
<ul>
<li>Withdraw consent at any time via Cookie Preferences in the footer</li>
<li>Request deletion of any data held about you</li>
<li>Object to processing of your personal data</li>
</ul>
<p>To exercise these rights, or if you have any questions, contact <a href="mailto:jlongieirl+privacy@gmail.com">jlongieirl+privacy@gmail.com</a>.</p>
</section>
<section class="privacy-section">
<h2>Third-party links</h2>
<p>This page contains links to external sites (GitHub, LinkedIn, etc.). Once you leave this site, their privacy policies apply. We are not responsible for their content or data practices.</p>
</section>
<section class="privacy-section">
<h2>Changes to this policy</h2>
<p>If we make material changes to how we use cookies, we will update the date at the top of this page and re-prompt for consent where required.</p>
</section>
</main>
<script src="cookies.js"></script>
<script>
// Wire up the inline "Cookie Preferences" button on this page
document.getElementById('privacy-cookie-prefs-btn').addEventListener('click', () => {
document.getElementById('cookie-prefs-btn').click();
});
</script>
</body>
</html>