PageSourceSearch

https://niallhoran.com/cart

html niallhoran.com collected 2026-10-02 07:43:55 UTC 168,522 bytes, 4,041 lines download raw bytes

1<!doctype html>
2<html class="flex flex-col min-h-full" lang="en">
3<head>
4<script>
5vice= {
6  config: {
7    viceAccountId: 'umusic',
8    viceSiteId: 'niallhoran',
9    viceSectionId: ''
10  }
11}
12</script>
vendor: 1 bytes, line 12
12
13<script src='//vice-prod.sdiapi.com/vice_loader/umusic/niallhoran'></script>
13<meta charset="utf-8">
14  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
15  <meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no,viewport-fit=cover"><style data-shopify>
16/* TYPOGRAPHY */:root {
17--typeface_primary: afacad, sans-serif,Arial, Helvetica, Sans-Serif;--typeface_secondary: afacad, sans-serif,Arial, Helvetica, Sans-Serif;--typeface_tertiary: afacad, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font_display_md: var(--typeface_secondary);
18  --font_display_md_weight: 500;
19  --font_display_md_letter: 0.125rem;
20  --font_display_md_line: 1.2;
21  --font_display_md_text_transform: uppercase;--font_display_md_size: 1.25rem;
22  --font_display_md_size_md: 1.25rem;--font_heading_2xl: var(--typeface_secondary);
23  --font_heading_2xl_weight: 500;
24  --font_heading_2xl_letter: 0.0375rem;
25  --font_heading_2xl_line: 1.2;
26  --font_heading_2xl_text_transform: none;--font_heading_2xl_size: 2.25rem;
27  --font_heading_2xl_size_md: 2.25rem;--font_heading_xl: var(--typeface_tertiary);
28  --font_heading_xl_weight: 400;
29  --font_heading_xl_letter: 0.0rem;
30  --font_heading_xl_line: 1.2;
31  --font_heading_xl_text_transform: none;--font_heading_xl_size: 1.875rem;
32  --font_heading_xl_size_md: 1.875rem;--font_heading_lg: var(--typeface_secondary);
33  --font_heading_lg_weight: 400;
34  --font_heading_lg_letter: 0.0rem;
35  --font_heading_lg_line: 1.2;
36  --font_heading_lg_text_transform: none;--font_heading_lg_size: 1.5rem;
37  --font_heading_lg_size_md: 1.625rem;--font_heading_md: var(--typeface_primary);
38  --font_heading_md_weight: 400;
39  --font_heading_md_letter: 0.0rem;
40  --font_heading_md_line: 1.2;
41  --font_heading_md_text_transform: none;--font_heading_md_size: 1.1875rem;
42  --font_heading_md_size_md: 1.1875rem;--font_body_lg: var(--typeface_tertiary);
43  --font_body_lg_weight: 400;
44  --font_body_lg_letter: 0.0rem;
45  --font_body_lg_line: 1;
46  --font_body_lg_text_transform: none;--font_body_lg_size: 1.375rem;
47  --font_body_lg_size_md: 1.375rem;--font_body_md: var(--typeface_primary);
48  --font_body_md_weight: 400;
49  --font_body_md_letter: 0.0rem;
50  --font_body_md_line: 1.2;
51  --font_body_md_text_transform: none;--font_body_md_size: 1.0rem;
52  --font_body_md_size_md: 1.0rem;--font_body_sm: var(--typeface_primary);
53  --font_body_sm_weight: 400;
54  --font_body_sm_letter: 0.0rem;
55  --font_body_sm_line: 1.2;
56  --font_body_sm_text_transform: none;--font_body_sm_size: 1.0rem;
57  --font_body_sm_size_md: 1.0rem;--font_body_xs: var(--typeface_primary);
58  --font_body_xs_weight: 500;
59  --font_body_xs_letter: 0.125rem;
60  --font_body_xs_line: 1.2;
61  --font_body_xs_text_transform: uppercase;--font_body_xs_size: 0.8125rem;
62  --font_body_xs_size_md: 0.8125rem;--font_button: var(--typeface_primary);
63  --font_button_weight: 400;
64  --font_button_letter: 0.0rem;
65  --font_button_line: 1;
66  --font_button_text_transform: none;--font_button_size: 1.0rem;
67  --font_button_size_md: 1.0rem;--font_navigation_lg: var(--typeface_primary);
68  --font_navigation_lg_weight: 500;
69  --font_navigation_lg_letter: 0.0rem;
70  --font_navigation_lg_line: 1.2;
71  --font_navigation_lg_text_transform: none;--font_navigation_lg_size: 0.9375rem;
72  --font_navigation_lg_size_md: 0.9375rem;--font_navigation_md: var(--typeface_primary);
73  --font_navigation_md_weight: 500;
74  --font_navigation_md_letter: 0.0rem;
75  --font_navigation_md_line: 1.2;
76  --font_navigation_md_text_transform: none;--font_navigation_md_size: 0.9375rem;
77  --font_navigation_md_size_md: 0.9375rem;--font_navigation_sm: var(--typeface_primary);
78  --font_navigation_sm_weight: 500;
79  --font_navigation_sm_letter: 0.125rem;
80  --font_navigation_sm_line: 1.2;
81  --font_navigation_sm_text_transform: uppercase;--font_navigation_sm_size: 0.8125rem;
82  --font_navigation_sm_size_md: 0.8125rem;
83}
84/* TYPOGRAPHY */
85
86</style><style data-shopify>
87  /**
88      Set Color Variable from shopify
89  */
90  :root {
91    --color-outline: #2563eb;
92    --color-black: hsl(0 0% 5%);
93    --color-white: hsl(0 0% 95%);
94    --color-transparent: rgba(0,0,0,0);
95
96    --color-gray-50: hsl(0 0% 98%);
97    --color-gray-100: hsl(240 5% 96%);
98    --color-gray-200: hsl(240 6% 90%);
99    --color-gray-300: hsl(240 5% 84%);
100    --color-gray-400: hsl(240 5% 65%);
101    --color-gray-500: hsl(240 4% 46%);
102    --color-gray-600: hsl(240 5% 34%);
103    --color-gray-700: hsl(240 5% 26%);
104    --color-gray-800: hsl(240 4% 16%);
105    --color-gray-900: hsl(240 6% 10%);
106
107    --color-gray-100-on: hsl(240 6% 10%);
108    --color-gray-900-on: hsl(240 5% 96%);--scheme1-content-base:96 6% 17%;
109      --scheme1-content-subtle:0 0% 100%;
110      --scheme1-content-emphasis:96 6% 17%;
111      --scheme1-content-heading:96 6% 17%;
112
113      --scheme1-surface:37 43% 90%;
114      --scheme1-surface-gradient: ;
115      --scheme1-background:41 34% 87%;
116      --scheme1-background-gradient: ;
117
118      --scheme1-primary:96 6% 17%;
119      --scheme1-primary-light:98 6% 37%;
120      --scheme1-primary-dark:0 0% 0%;
121      --scheme1-primary-on:41 34% 87%;
122      --scheme1-primary-gradient: ;
123
124      --scheme1-secondary:3 70% 50%;
125      --scheme1-secondary-light:3 70% 70%;
126      --scheme1-secondary-dark:3 70% 30%;
127      --scheme1-secondary-on:37 45% 91%;
128      --scheme1-secondary-gradient: ;
129
130      --scheme1-tertiary:97 22% 81%;
131      --scheme1-tertiary-light:0 0% 100%;
132      --scheme1-tertiary-dark:98 22% 61%;
133      --scheme1-tertiary-on:22 45% 22%;
134      --scheme1-tertiary-gradient: ;--scheme1-notification-on:200 4% 13%;
135      --scheme1-notification:97 22% 81%;
136      --scheme1-notification-mix: hsl(104, 14%, 37%);--scheme1-success-on:150 3% 13%;
137      --scheme1-success:141 79% 85%;
138      --scheme1-success-mix: hsl(141, 22%, 39%);--scheme1-error-on:0 74% 42%;
139      --scheme1-error:0 100% 97%;
140      --scheme1-error-mix: hsl(0, 66%, 60%);--scheme2-content-base:215 28% 17%;
141      --scheme2-content-subtle:215 14% 34%;
142      --scheme2-content-emphasis:224 71% 4%;
143      --scheme2-content-heading:221 39% 11%;
144
145      --scheme2-surface:220 14% 96%;
146      --scheme2-surface-gradient: ;
147      --scheme2-background:0 0% 100%;
148      --scheme2-background-gradient: ;
149
150      --scheme2-primary:221 39% 11%;
151      --scheme2-primary-light:221 39% 31%;
152      --scheme2-primary-dark:0 0% 0%;
153      --scheme2-primary-on:0 0% 98%;
154      --scheme2-primary-gradient: ;
155
156      --scheme2-secondary:217 19% 27%;
157      --scheme2-secondary-light:217 19% 47%;
158      --scheme2-secondary-dark:220 18% 7%;
159      --scheme2-secondary-on:0 0% 98%;
160      --scheme2-secondary-gradient: ;
161
162      --scheme2-tertiary:215 14% 34%;
163      --scheme2-tertiary-light:216 14% 54%;
164      --scheme2-tertiary-dark:216 14% 14%;
165      --scheme2-tertiary-on:0 0% 98%;
166      --scheme2-tertiary-gradient: ;--scheme2-notification-on:200 4% 13%;
167      --scheme2-notification:220 6% 90%;
168      --scheme2-notification-mix: hsl(211, 11%, 42%);--scheme2-success-on:150 3% 13%;
169      --scheme2-success:141 79% 85%;
170      --scheme2-success-mix: hsl(141, 22%, 39%);--scheme2-error-on:0 74% 42%;
171      --scheme2-error:0 100% 97%;
172      --scheme2-error-mix: hsl(0, 66%, 60%);--scheme3-content-base:220 13% 91%;
173      --scheme3-content-subtle:216 12% 84%;
174      --scheme3-content-emphasis:210 20% 98%;
175      --scheme3-content-heading:210 20% 98%;
176
177      --scheme3-surface:221 39% 11%;
178      --scheme3-surface-gradient: ;
179      --scheme3-background:224 71% 4%;
180      --scheme3-background-gradient: ;
181
182      --scheme3-primary:224 71% 4%;
183      --scheme3-primary-light:224 71% 24%;
184      --scheme3-primary-dark:0 0% 0%;
185      --scheme3-primary-on:210 20% 98%;
186      --scheme3-primary-gradient: ;
187
188      --scheme3-secondary:221 39% 11%;
189      --scheme3-secondary-light:221 39% 31%;
190      --scheme3-secondary-dark:0 0% 0%;
191      --scheme3-secondary-on:220 13% 91%;
192      --scheme3-secondary-gradient: ;
193
194      --scheme3-tertiary:217 19% 27%;
195      --scheme3-tertiary-light:217 19% 47%;
196      --scheme3-tertiary-dark:220 18% 7%;
197      --scheme3-tertiary-on:210 20% 98%;
198      --scheme3-tertiary-gradient: ;--scheme3-notification-on:200 4% 13%;
199      --scheme3-notification:220 6% 90%;
200      --scheme3-notification-mix: hsl(211, 11%, 42%);--scheme3-success-on:150 3% 13%;
201      --scheme3-success:141 79% 85%;
202      --scheme3-success-mix: hsl(141, 22%, 39%);--scheme3-error-on:0 74% 42%;
203      --scheme3-error:0 100% 97%;
204      --scheme3-error-mix: hsl(0, 66%, 60%);--scheme4-content-base:226 100% 94%;
205      --scheme4-content-subtle:228 96% 89%;
206      --scheme4-content-emphasis:0 0% 100%;
207      --scheme4-content-heading:0 0% 100%;
208
209      --scheme4-surface:244 47% 20%;
210      --scheme4-surface-gradient: ;
211      --scheme4-background:242 47% 34%;
212      --scheme4-background-gradient: ;
213
214      --scheme4-primary:0 0% 100%;
215      --scheme4-primary-light:0 0% 100%;
216      --scheme4-primary-dark:0 0% 80%;
217      --scheme4-primary-on:230 94% 82%;
218      --scheme4-primary-gradient: ;
219
220      --scheme4-secondary:226 100% 94%;
221      --scheme4-secondary-light:0 0% 100%;
222      --scheme4-secondary-dark:226 100% 74%;
223      --scheme4-secondary-on:0 0% 98%;
224      --scheme4-secondary-gradient: ;
225
226      --scheme4-tertiary:230 94% 82%;
227      --scheme4-tertiary-light:0 0% 100%;
228      --scheme4-tertiary-dark:230 94% 62%;
229      --scheme4-tertiary-on:0 0% 98%;
230      --scheme4-tertiary-gradient: ;--scheme4-notification-on:200 4% 13%;
231      --scheme4-notification:220 6% 90%;
232      --scheme4-notification-mix: hsl(211, 11%, 42%);--scheme4-success-on:150 3% 13%;
233      --scheme4-success:141 79% 85%;
234      --scheme4-success-mix: hsl(141, 22%, 39%);--scheme4-error-on:0 74% 42%;
235      --scheme4-error:0 100% 97%;
236      --scheme4-error-mix: hsl(0, 66%, 60%);}.scheme-scheme1 {
237        /* Content */
238        --color-content-base: hsl(var(--scheme1-content-base));
239        --color-content-subtle: hsl(var(--scheme1-content-subtle));
240        --color-content-emphasis: hsl(var(--scheme1-content-emphasis));
241        --color-content-heading: hsl(var(--scheme1-content-heading));
242
243        /* Surface */
244        --color-surface: hsl(var(--scheme1-surface, var(--scheme1-background)));--color-surface-gradient: hsl(var(--scheme1-surface));
245        /* Background */
246        --color-background: hsl(var(--scheme1-background));--color-background-gradient: hsl(var(--scheme1-background));/* Primary Color */
247        --color-primary-on: hsl(var(--scheme1-primary-on));
248        --color-primary: hsl(var(--scheme1-primary));
249        --color-primary-dark: hsl(var(--scheme1-primary-dark));
250        --color-primary-light: hsl(var(--scheme1-primary-light));--color-primary-gradient: hsl(var(--scheme1-primary));/* Secondary Color */
251        --color-secondary-on: hsl(var(--scheme1-secondary-on));
252        --color-secondary: hsl(var(--scheme1-secondary));
253        --color-secondary-dark: hsl(var(--scheme1-secondary-dark));
254        --color-secondary-light: hsl(var(--scheme1-secondary-light));--color-secondary-gradient: hsl(var(--scheme1-secondary));/* Tertiary Color */
255        --color-tertiary-on: hsl(var(--scheme1-tertiary-on));
256        --color-tertiary: hsl(var(--scheme1-tertiary));
257        --color-tertiary-dark: hsl(var(--scheme1-tertiary-dark));
258        --color-tertiary-light: hsl(var(--scheme1-tertiary-light));--color-tertiary-gradient: hsl(var(--scheme1-tertiary));/* Accent Colors */
259        /* Notification */
260        --color-on-notification: hsl(var(--scheme1-notification-on));
261        --color-notification: hsl(var(--scheme1-notification));
262        --color-notification-mix: var(--scheme1-notification-mix);
263
264        /* Success */
265        --color-on-success: hsl(var(--scheme1-success-on));
266        --color-success: hsl(var(--scheme1-success));
267        --color-success-mix: var(--scheme1-success-mix);
268
269        /* Error */
270        --color-on-error: hsl(var(--scheme1-error-on));
271        --color-error-on: var(--color-on-error);
272        --color-error: hsl(var(--scheme1-error));
273        --color-error-mix: var(--scheme1-error-mix);--color-error-mix-on: var(--color-black);
274
275        /* Section */--color-text: var(--color-primary, var(--color-content-base));
276        --color-border: var(--color-primary-dark, var(--border-default-color));
277        /* Section */
278
279        /* Tables BG Color */
280        --color-table-bg: var(--color-default, var(--color-background));
281
282        /* Input Color */
283        --color-input-text: hsl(var(--scheme1-content-base));
284      }
285    .scheme-scheme2 {
286        /* Content */
287        --color-content-base: hsl(var(--scheme2-content-base));
288        --color-content-subtle: hsl(var(--scheme2-content-subtle));
289        --color-content-emphasis: hsl(var(--scheme2-content-emphasis));
290        --color-content-heading: hsl(var(--scheme2-content-heading));
291
292        /* Surface */
293        --color-surface: hsl(var(--scheme2-surface, var(--scheme2-background)));--color-surface-gradient: hsl(var(--scheme2-surface));
294        /* Background */
295        --color-background: hsl(var(--scheme2-background));--color-background-gradient: hsl(var(--scheme2-background));/* Primary Color */
296        --color-primary-on: hsl(var(--scheme2-primary-on));
297        --color-primary: hsl(var(--scheme2-primary));
298        --color-primary-dark: hsl(var(--scheme2-primary-dark));
299        --color-primary-light: hsl(var(--scheme2-primary-light));--color-primary-gradient: hsl(var(--scheme2-primary));/* Secondary Color */
300        --color-secondary-on: hsl(var(--scheme2-secondary-on));
301        --color-secondary: hsl(var(--scheme2-secondary));
302        --color-secondary-dark: hsl(var(--scheme2-secondary-dark));
303        --color-secondary-light: hsl(var(--scheme2-secondary-light));--color-secondary-gradient: hsl(var(--scheme2-secondary));/* Tertiary Color */
304        --color-tertiary-on: hsl(var(--scheme2-tertiary-on));
305        --color-tertiary: hsl(var(--scheme2-tertiary));
306        --color-tertiary-dark: hsl(var(--scheme2-tertiary-dark));
307        --color-tertiary-light: hsl(var(--scheme2-tertiary-light));--color-tertiary-gradient: hsl(var(--scheme2-tertiary));/* Accent Colors */
308        /* Notification */
309        --color-on-notification: hsl(var(--scheme2-notification-on));
310        --color-notification: hsl(var(--scheme2-notification));
311        --color-notification-mix: var(--scheme2-notification-mix);
312
313        /* Success */
314        --color-on-success: hsl(var(--scheme2-success-on));
315        --color-success: hsl(var(--scheme2-success));
316        --color-success-mix: var(--scheme2-success-mix);
317
318        /* Error */
319        --color-on-error: hsl(var(--scheme2-error-on));
320        --color-error-on: var(--color-on-error);
321        --color-error: hsl(var(--scheme2-error));
322        --color-error-mix: var(--scheme2-error-mix);--color-error-mix-on: var(--color-black);
323
324        /* Section */--color-bg: var(--color-transparent, var(--color-background));--color-text: var(--color-primary, var(--color-content-base));
325        --color-border: var(--color-primary-dark, var(--border-default-color));
326        /* Section */
327
328        /* Tables BG Color */
329        --color-table-bg: var(--color-default, var(--color-background));
330
331        /* Input Color */
332        --color-input-text: hsl(var(--scheme2-content-base));
333      }
334    .scheme-scheme3 {
335        /* Content */
336        --color-content-base: hsl(var(--scheme3-content-base));
337        --color-content-subtle: hsl(var(--scheme3-content-subtle));
338        --color-content-emphasis: hsl(var(--scheme3-content-emphasis));
339        --color-content-heading: hsl(var(--scheme3-content-heading));
340
341        /* Surface */
342        --color-surface: hsl(var(--scheme3-surface, var(--scheme3-background)));--color-surface-gradient: hsl(var(--scheme3-surface));
343        /* Background */
344        --color-background: hsl(var(--scheme3-background));--color-background-gradient: hsl(var(--scheme3-background));/* Primary Color */
345        --color-primary-on: hsl(var(--scheme3-primary-on));
346        --color-primary: hsl(var(--scheme3-primary));
347        --color-primary-dark: hsl(var(--scheme3-primary-dark));
348        --color-primary-light: hsl(var(--scheme3-primary-light));--color-primary-gradient: hsl(var(--scheme3-primary));/* Secondary Color */
349        --color-secondary-on: hsl(var(--scheme3-secondary-on));
350        --color-secondary: hsl(var(--scheme3-secondary));
351        --color-secondary-dark: hsl(var(--scheme3-secondary-dark));
352        --color-secondary-light: hsl(var(--scheme3-secondary-light));--color-secondary-gradient: hsl(var(--scheme3-secondary));/* Tertiary Color */
353        --color-tertiary-on: hsl(var(--scheme3-tertiary-on));
354        --color-tertiary: hsl(var(--scheme3-tertiary));
355        --color-tertiary-dark: hsl(var(--scheme3-tertiary-dark));
356        --color-tertiary-light: hsl(var(--scheme3-tertiary-light));--color-tertiary-gradient: hsl(var(--scheme3-tertiary));/* Accent Colors */
357        /* Notification */
358        --color-on-notification: hsl(var(--scheme3-notification-on));
359        --color-notification: hsl(var(--scheme3-notification));
360        --color-notification-mix: var(--scheme3-notification-mix);
361
362        /* Success */
363        --color-on-success: hsl(var(--scheme3-success-on));
364        --color-success: hsl(var(--scheme3-success));
365        --color-success-mix: var(--scheme3-success-mix);
366
367        /* Error */
368        --color-on-error: hsl(var(--scheme3-error-on));
369        --color-error-on: var(--color-on-error);
370        --color-error: hsl(var(--scheme3-error));
371        --color-error-mix: var(--scheme3-error-mix);--color-error-mix-on: var(--color-black);
372
373        /* Section */--color-bg: var(--color-transparent, var(--color-background));--color-text: var(--color-primary, var(--color-content-base));
374        --color-border: var(--color-primary-dark, var(--border-default-color));
375        /* Section */
376
377        /* Tables BG Color */
378        --color-table-bg: var(--color-default, var(--color-background));
379
380        /* Input Color */
381        --color-input-text: hsl(var(--scheme3-content-base));
382      }
383    .scheme-scheme4 {
384        /* Content */
385        --color-content-base: hsl(var(--scheme4-content-base));
386        --color-content-subtle: hsl(var(--scheme4-content-subtle));
387        --color-content-emphasis: hsl(var(--scheme4-content-emphasis));
388        --color-content-heading: hsl(var(--scheme4-content-heading));
389
390        /* Surface */
391        --color-surface: hsl(var(--scheme4-surface, var(--scheme4-background)));--color-surface-gradient: hsl(var(--scheme4-surface));
392        /* Background */
393        --color-background: hsl(var(--scheme4-background));--color-background-gradient: hsl(var(--scheme4-background));/* Primary Color */
394        --color-primary-on: hsl(var(--scheme4-primary-on));
395        --color-primary: hsl(var(--scheme4-primary));
396        --color-primary-dark: hsl(var(--scheme4-primary-dark));
397        --color-primary-light: hsl(var(--scheme4-primary-light));--color-primary-gradient: hsl(var(--scheme4-primary));/* Secondary Color */
398        --color-secondary-on: hsl(var(--scheme4-secondary-on));
399        --color-secondary: hsl(var(--scheme4-secondary));
400        --color-secondary-dark: hsl(var(--scheme4-secondary-dark));
401        --color-secondary-light: hsl(var(--scheme4-secondary-light));--color-secondary-gradient: hsl(var(--scheme4-secondary));/* Tertiary Color */
402        --color-tertiary-on: hsl(var(--scheme4-tertiary-on));
403        --color-tertiary: hsl(var(--scheme4-tertiary));
404        --color-tertiary-dark: hsl(var(--scheme4-tertiary-dark));
405        --color-tertiary-light: hsl(var(--scheme4-tertiary-light));--color-tertiary-gradient: hsl(var(--scheme4-tertiary));/* Accent Colors */
406        /* Notification */
407        --color-on-notification: hsl(var(--scheme4-notification-on));
408        --color-notification: hsl(var(--scheme4-notification));
409        --color-notification-mix: var(--scheme4-notification-mix);
410
411        /* Success */
412        --color-on-success: hsl(var(--scheme4-success-on));
413        --color-success: hsl(var(--scheme4-success));
414        --color-success-mix: var(--scheme4-success-mix);
415
416        /* Error */
417        --color-on-error: hsl(var(--scheme4-error-on));
418        --color-error-on: var(--color-on-error);
419        --color-error: hsl(var(--scheme4-error));
420        --color-error-mix: var(--scheme4-error-mix);--color-error-mix-on: var(--color-black);
421
422        /* Section */--color-bg: var(--color-transparent, var(--color-background));--color-text: var(--color-primary, var(--color-content-base));
423        --color-border: var(--color-primary-dark, var(--border-default-color));
424        /* Section */
425
426        /* Tables BG Color */
427        --color-table-bg: var(--color-default, var(--color-background));
428
429        /* Input Color */
430        --color-input-text: hsl(var(--scheme4-content-base));
431      }
432    
433</style>
434<style data-shopify>:root {
435    --border-default-width: 3px;
436    --border-default-width-narrow: 3px;
437    --border-default-width-wide: 3px;
438    --border-default-radius: 0;
439    --border-default-color: var(--color-content-subtle);
440  }</style><style data-shopify>
441  :root {--button-px-sm: 0.75rem; --button-py-sm: 0.5rem; --button-px-md: 1rem; --button-py-md: 0.625rem; --button-px-lg: 1.25rem; --button-py-lg: 0.75rem; --button-font-size: var(--font_button_size);--button-all-border-radius: var(--border-default-radius);/* default */ --border-button-width: var(--border-default-width);--button-px-default: var(--button-px-lg);--button-py-default: var(--button-py-md);}
442
443  .btn {--tw-shadow: 0 0px 0px 0 var(--button-shadow-color);
443 --button-box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0,0,0,0)), var(--tw-ring-shadow, 0 0 rgba(0,0,0,0)), var(--tw-shadow); display: flex; align-items: center; justify-content: center; text-align: center; cursor: pointer; position: relative; overflow: hidden; color: var(--button-color); border: var(--border-button-width) solid var(--border-color); border-radius: var(--button-all-border-radius); box-shadow: var(--button-box-shadow); padding: var(--button-py-default) var(--button-px-default); font-size: var(--button-font-size); font-family: var(--font_button); font-weight: var(--font_button_weight); letter-spacing: var(--font_button_letter); line-height: var(--font_button_line); text-transform: var(--font_button_text_transform); transition: .2s ease-out; --button-color: var(--color-primary); --border-color: var(--color-primary,var(--color-primary)); --button-shadow-color: var(--color-primary-20); text-decoration-color: transparent; --button-fill: var(--color-transparent);--button-fill-hover: var(--color-secondary); background: var(--button-fill); --button-gradient-visible: hidden;}
444
445  .btn:before,
446  .btn:after {
447    content: '';
448    background: transparent;
449    inset: 0;
450    position: absolute;
451    display: block;
452    visibility: var(--button-gradient-visible, hidden);
453    z-index: -1;
454    transition: .2s ease-out;
455    transform: translate3d(0,0,0);
456  }
457  .btn:before {
458    background: var(--button-fill-hover);
459    opacity: 0;
460  }
461  .btn:hover::before {
462    opacity: var(--button-bg-opacity, 1);
463  }
464
465  .btn:after {
466    background: var(--button-fill);
467    opacity: var(--button-bg-opacity, 1);
468  }
469  .btn:hover::after {
470    opacity: 0;
471  }
472
473  input.btn {
474    background: var(--button-fill);
475  }
476  input.btn:before {
477    display: none;
478  }
479  input.btn:after {
480    display: none;
481  }
482  input.btn:hover {
483    background: var(--button-fill-hover);
484  }
485
486  .btn--sm {
487    --button-py-default: var(--button-py-sm);
488    --button-px-default: var(--button-px-sm);
489    font-size: max(calc(var(--button-font-size) * .618em ), 14px)
490  }
491  .btn--md {
492    --button-py-default: var(--button-py-md);
493    --button-px-default: var(--button-px-md);
494  }
495  .btn--lg {
496    --button-py-default: var(--button-py-lg);
497    --button-px-default: var(--button-px-lg);
498  }
499
500  .btn:hover,
501  .btn--primary:hover {--border-color: var(--default,var(--color-secondary)); --button-color: var(--color-secondary-on); --button-shadow-color: var(--color-secondary-20); text-decoration-color: transparent; background: var(--button-fill-hover);}
502
503  .btn--secondary {--button-color: var(--color-secondary); --border-color: var(--default,var(--color-secondary)); --button-shadow-color: var(--color-secondary-20); text-decoration-color: transparent; --button-fill: var(--color-transparent);--button-fill-hover: var(- render 'case-colors-variables', color: 'transparent' -); background: var(--button-fill); --button-gradient-visible: hidden;}
504
505  .btn--secondary:hover {--button-color: var(--color-primary); --border-color: var(--color-secondary,var(--color-primary)); --button-shadow-color: var(--color-primary-20); text-decoration-color: transparent; background: var(--button-fill-hover);}
506
507  .btn--tertiary {--border-color: var(--default,var(--color-secondary)); --button-color: var(--color-secondary-on); --button-shadow-color: var(--color-secondary-20); text-decoration-color: transparent; --button-fill: var(--color-secondary);--button-fill-hover: var(--color-tertiary-on); background: var(--button-fill); --button-gradient-visible: hidden;}
508
509  .btn--tertiary:hover {--border-color: var(--default,var(--color-tertiary-on)); --button-color: var(--color-tertiary-on-on); --button-shadow-color: var(--color-tertiary-on-20); text-decoration-color: transparent; background: var(--button-fill-hover);}
510
511  .btn--light {--border-color: var(--color-gray-100,var(--color-gray-100)); --button-color: var(--color-gray-100-on); --button-shadow-color: var(--color-gray-100-20); text-decoration-color: transparent; --button-fill: var(--color-gray-100);--button-fill-hover: var(--color-gray-100);}
512
513  .btn--light:hover {--border-color: var(--color-gray-100,var(--color-gray-100)); --button-color: var(--color-gray-100-on); --button-shadow-color: var(--color-gray-100-20); text-decoration-color: transparent;}
514
515  .btn--dark {--border-color: var(--color-gray-900,var(--color-gray-900)); --button-color: var(--color-gray-900-on); --button-shadow-color: var(--color-gray-900-20); text-decoration-color: transparent; --button-fill: var(--color-gray-900);--button-fill-hover: var(--color-gray-900);}
516
517  .btn--dark:hover {--border-color: var(--color-gray-900,var(--color-gray-900)); --button-color: var(--color-gray-900-on); --button-shadow-color: var(--color-gray-900-20); text-decoration-color: transparent;}
518
519  @media screen and (min-width: 48em) {
520    .btn {
521      --button-font-size: var(--font_button_size_md);
522    }
523  }
524</style>
525<style data-shopify>
526:root {
527  --gap-sm-2xs: 0.25rem;
528  --gap-sm-xs: 0.5rem;
529  --gap-sm-sm: 0.75rem;
530  --gap-sm-md: 1.0rem;
531  --gap-sm-lg: 1.25rem;
532  --gap-sm-xl: 1.5rem;
533  --gap-sm-2xl: 2.0rem;
534  --gap-lg-2xs: 0.5rem;
535  --gap-lg-xs: 1.0rem;
536  --gap-lg-sm: 1.5rem;
537  --gap-lg-md: 2.0rem;
538  --gap-lg-lg: 2.5rem;
539  --gap-lg-xl: 3.0rem;
540  --gap-lg-2xl: 3.5rem;
541  --gap-container-2xs: 0.5rem;
542  --gap-container-xs: 1.0rem;
543  --gap-container-sm: 2.0rem;
544  --gap-container-md: 3.0rem;
545  --gap-container-lg: 4.0rem;
546  --gap-container-xl: 5.0rem;
547  --gap-container-2xl: 6.0rem;
548  --padding-xs-2xs: 0.125rem;
549  --padding-xs-xs: 0.25rem;
550  --padding-xs-sm: 0.375rem;
551  --padding-xs-md: 0.5rem;
552  --padding-xs-lg: 0.625rem;
553  --padding-xs-xl: 0.75rem;
554  --padding-xs-2xl: 1.0rem;
555  --padding-sm-2xs: 0.25rem;
556  --padding-sm-xs: 0.5rem;
557  --padding-sm-sm: 0.75rem;
558  --padding-sm-md: 1.0rem;
559  --padding-sm-lg: 1.25rem;
560  --padding-sm-xl: 1.5rem;
561  --padding-sm-2xl: 2.0rem;
562  --padding-lg-2xs: 0.5rem;
563  --padding-lg-xs: 1.0rem;
564  --padding-lg-sm: 1.5rem;
565  --padding-lg-md: 2.0rem;
566  --padding-lg-lg: 2.5rem;
567  --padding-lg-xl: 3.0rem;
568  --padding-lg-2xl: 3.5rem;
569  --padding-container-2xs: 0.5rem;
570  --padding-container-xs: 1.0rem;
571  --padding-container-sm: 2.0rem;
572  --padding-container-md: 3.0rem;
573  --padding-container-lg: 4.0rem;
574  --padding-container-xl: 5.0rem;
575  --padding-container-2xl: 6.0rem;
576  --padding-section-desktop-2xs: .5rem;
577  --padding-section-desktop-xs: 1rem;
578  --padding-section-desktop-sm: 2rem;
579  --padding-section-desktop-md: 3rem;
580  --padding-section-desktop-lg: 4rem;
581  --padding-section-desktop-xl: 5rem;
582  --padding-section-desktop-2xl: 6rem;
583  --padding-section-mobile-2xs: .25rem;
584  --padding-section-mobile-xs: .5rem;
585  --padding-section-mobile-sm: 1.5rem;
586  --padding-section-mobile-md: 2rem;
587  --padding-section-mobile-lg: 2.5rem;
588  --padding-section-mobile-xl: 3rem;
589  --padding-section-mobile-2xl: 4rem;
590  --margin-sm-2xs: 0.25rem;
591  --margin-sm-xs: 0.5rem;
592  --margin-sm-sm: 0.75rem;
593  --margin-sm-md: 1.0rem;
594  --margin-sm-lg: 1.25rem;
595  --margin-sm-xl: 1.5rem;
596  --margin-sm-2xl: 2.0rem;
597  --margin-lg-2xs: 0.5rem;
598  --margin-lg-xs: 1.0rem;
599  --margin-lg-sm: 1.5rem;
600  --margin-lg-md: 2.0rem;
601  --margin-lg-lg: 2.5rem;
602  --margin-lg-xl: 3.0rem;
603  --margin-lg-2xl: 3.5rem;
604  --margin-container-2xs: 0.5rem;
605  --margin-container-xs: 1.0rem;
606  --margin-container-sm: 2.0rem;
607  --margin-container-md: 3.0rem;
608  --margin-container-lg: 4.0rem;
609  --margin-container-xl: 5.0rem;
610  --margin-container-2xl: 6.0rem;
611  --w-tooltip-sm: 180px;
612  --w-tooltip-md: 210px;
613  --w-tooltip-lg: 240px;
614  --w-tooltip-xl: 270px;
615
616  --container-max-w-sm: 100rem;
617  --container-max-w-lg: 200rem;--select-pad-r: calc(var(--border-default-width) + 1rem + (2 * var(--padding-sm-xs)));
618}
619
620</style><link href="//niallhoran.com/cdn/shop/t/56/assets/styles-critical.bundle.css?v=143020677158560688091789132637" rel="stylesheet" type="text/css" media="all" />
621  <title>Your Shopping Cart - Niall Horan Official Store</title>
621<script src="//niallhoran.com/cdn/shop/t/56/assets/runtime.bundle.js?v=27861724360547603831789132637"></script>
621<script defer="defer" src="//niallhoran.com/cdn/shop/t/56/assets/geolocation.bundle.js?v=73219286169174612261789132636"></script>
621<script>
622  window.dataLayer = window.dataLayer || [];
623  
624window.dataLayer.push({
625    event:'page_data_loaded',
626    user: {
627      logged_in: 'false'
628    },
629    pageType: 'cart',
630    platform: 'shopify',
631    shopify_consent: 'false',
632    platform_theme: 'global',
633    platform_version: '2026.09.1.0'
634  });
635</script>
635
636
637<script>
vendor: 327 bytes, lines 637-641
637(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
638new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
639j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
640'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
641})(window,document,'script','dataLayer','
641GTM-T4SPZ5
vendor: 3 bytes, line 641
641');
641</script>
641
642
643
644<link rel="canonical" href="https://niallhoran.com/cart">
645
646  
646<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
646<meta name="google-site-verification" content="utRC16LiCAx_HxbFhbzSIMZoF09zY1LzPOJoO0QXDps">
647<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/23650831/digital_wallets/dialog">
648<meta id="in-context-paypal-metadata" data-shop-id="23650831" data-venmo-supported="false" data-environment="production" data-locale="en_US" data-paypal-v4="true" data-currency="USD">
649<link rel="ucp" href="/.well-known/ucp" version="2026-08-25">
649<script async="async" src="/checkouts/internal/preloads.js?locale=en-US&default_configuration_id=34538684786"></script>
649
650<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
651<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=en-US&default_configuration_id=34538684786&shop_id=23650831" crossorigin="anonymous"></script>
vendor: 1 bytes, line 651
651
652<script id="apple-pay-shop-capabilities" type="application/json">{"shopId":23650831,"countryCode":"US","currencyCode":"USD","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/23650831","merchantName":"Niall Horan Official Store","requiredBillingContactFields":["postalAddress","email","phone"],"requiredShippingContactFields":["postalAddress","email","phone"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","amex","discover","elo","jcb"],"total":{"type":"pending","label":"Niall Horan Official Store","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script>
vendor: 1 bytes, line 652
652
653<script id="shopify-features" type="application/json">{"accessToken":"99666ecc946b76440dcad7f52073e46f","betas":["rich-media-storefront-analytics"],"domain":"niallhoran.com","predictiveSearch":true,"shopId":23650831,"locale":"en"}</script>
vendor: 1 bytes, line 653
653
654<script>var Shopify = Shopify || {};
655Shopify.shop = "niall-horan.myshopify.com";
656Shopify.locale = "en";
657Shopify.currency = {"active":"USD","rate":"1.0"};
658Shopify.country = "US";
659Shopify.theme = {"name":"Rhythm-2026.09.1.0-Sep11","id":193643905394,"schema_name":"Rhythm","schema_version":"2026.09.1.0","theme_store_id":null,"role":"main"};
660Shopify.theme.handle = "null";
661Shopify.theme.style = {"id":null,"handle":null};
662Shopify.cdnHost = "niallhoran.com/cdn";
663Shopify.routes = Shopify.routes || {};
664Shopify.routes.root = "/";
665Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js";
666Shopify.SignInWithShop = Shopify.SignInWithShop || {};
667Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {};
668Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 668
668
669<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 669
669
670<script>!function(o){function n(){var o=[];function n(){o.push(Array.prototype.slice.apply(arguments))}return n.q=o,n}var t=o.Shopify=o.Shopify||{};t.loadFeatures=n(),t.autoloadFeatures=n()}(window);</script>
vendor: 1 bytes, line 670
670
671<script>
672  window.ShopifyPay = window.ShopifyPay || {};
673  window.ShopifyPay.apiHost = "shop.app\/pay";
674  window.ShopifyPay.redirectState = null;
675</script>
vendor: 1 bytes, line 675
675
676<script>
677  window.Shopify = window.Shopify || {};
678  window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {};
679  window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 };
680  window.Shopify.SignInWithShop.eligible = true;
681</script>
vendor: 1 bytes, line 681
681
682<script id="shop-js-analytics" type="application/json">{"pageType":"cart"}</script>
vendor: 1 bytes, line 682
682
683<script defer="defer" async type="module" src="https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js"></script>
vendor: 1 bytes, line 683
683
684<script type="module">
685  await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js");
686
687  window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true});
688
689</script>
vendor: 1 bytes, line 689
689
690<script>
691  window.Shopify = window.Shopify || {};
692  if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {};
693  window.Shopify.featureAssets['shop-js'] = {"avatar":["modules/v2/loader.avatar.en.esm.js"],"checkout-modal":["modules/v2/loader.checkout-modal.en.esm.js"],"init-customer-accounts-sign-up":["modules/v2/loader.init-customer-accounts-sign-up.en.esm.js"],"init-customer-accounts":["modules/v2/loader.init-customer-accounts.en.esm.js"],"init-fed-cm":["modules/v2/loader.init-fed-cm.en.esm.js"],"init-shop-cart-sync":["modules/v2/loader.init-shop-cart-sync.en.esm.js"],"init-shop-email-lookup-coordinator":["modules/v2/loader.init-shop-email-lookup-coordinator.en.esm.js"],"init-shop-for-new-customer-accounts":["modules/v2/loader.init-shop-for-new-customer-accounts.en.esm.js"],"init-shop-user-recognition":["modules/v2/loader.init-shop-user-recognition.en.esm.js"],"init-windoid":["modules/v2/loader.init-windoid.en.esm.js"],"lead-capture":["modules/v2/loader.lead-capture.en.esm.js"],"listener":["modules/v2/loader.listener.en.esm.js"],"pay-button":["modules/v2/loader.pay-button.en.esm.js"],"payment-terms":["modules/v2/loader.payment-terms.en.esm.js"],"shop-button":["modules/v2/loader.shop-button.en.esm.js"],"shop-cart-sync":["modules/v2/loader.shop-cart-sync.en.esm.js"],"shop-cash-offers":["modules/v2/loader.shop-cash-offers.en.esm.js"],"shop-follow-button":["modules/v2/loader.shop-follow-button.en.esm.js"],"shop-login-button":["modules/v2/loader.shop-login-button.en.esm.js"],"shop-login":["modules/v2/loader.shop-login.en.esm.js"],"shop-toast-manager":["modules/v2/loader.shop-toast-manager.en.esm.js"],"shop-user-recognition":["modules/v2/loader.shop-user-recognition.en.esm.js"]};
694</script>
vendor: 1 bytes, line 694
694
695<script>(function() {
696  var isLoaded = false;
697  function asyncLoad() {
698    if (isLoaded) return;
699    isLoaded = true;
700    var urls = ["https:\/\/r2-t.trackedlink.net\/_dmspt.js?shop=niall-horan.myshopify.com","\/\/shopify.privy.com\/widget.js?shop=niall-horan.myshopify.com","https:\/\/size-guides-prod.esc-apps-cdn.com\/1773845096-app.niall-horan.myshopify.com.js?shop=niall-horan.myshopify.com"];
701    for (var i = 0; i < urls.length; i++) {
702      var s = document.createElement('script');
703      s.type = 'text/javascript';
704      s.async = true;
705      s.src = urls[i];
706      var x = document.getElementsByTagName('script')[0];
707      x.parentNode.insertBefore(s, x);
708    }
709  };
710  if(window.attachEvent) {
711    window.attachEvent('onload', asyncLoad);
712  } else {
713    window.addEventListener('load', asyncLoad, false);
714  }
715})();</script>
vendor: 1 bytes, line 715
715
716<script id="__st">var __st={"a":23650831,"offset":-14400,"reqid":"9c5e89d5-11c4-4a46-8bba-b55ea0ff712b-1790927035","pageurl":"niallhoran.com\/cart","u":"8c854c6a1d9f","p":"cart"};</script>
vendor: 1 bytes, line 716
716
717<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 717
717
718<script id="captcha-bootstrap">!function(){'use strict';const t='contact',e='account',n='new_comment',o=[[t,t],['blogs',n],['comments',n],[t,'customer']],c=[[e,'customer_login'],[e,'guest_login'],[e,'recover_customer_password'],[e,'create_customer']],r=t=>t.map((([t,e])=>`form[action*='/${t}']:not([data-nocaptcha='true']) input[name='form_type'][value='${e}']`)).join(','),a=t=>()=>t?[...document.querySelectorAll(t)].map((t=>t.form)):[];function s(){const t=[...o],e=r(t);return a(e)}const i='password',u='form_key',d=['recaptcha-v3-token','g-recaptcha-response','h-captcha-response',i],f=()=>{try{return window.sessionStorage}catch{return}},m='__shopify_v',_=t=>t.elements[u];function p(t,e,n=!1){try{const o=window.sessionStorage,c=JSON.parse(o.getItem(e)),{data:r}=function(t){const{data:e,action:n}=t;return t[m]||n?{data:e,action:n}:{data:t,action:n}}(c);for(const[e,n]of Object.entries(r))t.elements[e]&&(t.elements[e].value=n);n&&o.removeItem(e)}catch(o){console.error('form repopulation failed',{error:o})}}const l='form_type',E='cptcha';function T(t){t.dataset[E]=!0}const w=window,h=w.document,L='Shopify',v='ce_forms',y='captcha';let A=!1;((t,e)=>{const n=(g='f06e6c50-85a8-45c8-87d0-21a2b65856fe',I='https://cdn.shopify.com/shopifycloud/storefront-forms-hcaptcha/ce_storefront_forms_captcha_hcaptcha.v1.5.3.iife.js',D={infoText:'Protected by hCaptcha',privacyText:'Privacy',termsText:'Terms'},(t,e,n)=>{const o=w[L][v],c=o.bindForm;if(c)return c(t,g,e,D).then(n);var r;o.q.push([[t,g,e,D],n]),r=I,A||(h.body.append(Object.assign(h.createElement('script'),{id:'captcha-provider',async:!0,src:r})),A=!0)});var g,I,D;w[L]=w[L]||{},w[L][v]=w[L][v]||{},w[L][v].q=[],w[L][y]=w[L][y]||{},w[L][y].protect=function(t,e){n(t,void 0,e),T(t)},Object.freeze(w[L][y]),function(t,e,n,w,h,L){const[v,y,A,g]=function(t,e,n){const i=e?o:[],u=t?c:[],d=[...i,...u],f=r(d),m=r(i),_=r(d.filter((([t,e])=>n.includes(e))));return[a(f),a(m),a(_),s()]}(w,h,L),I=t=>{const e=t.target;return e instanceof HTMLFormElement?e:e&&e.form},D=t=>v().includes(t);t.addEventListener('submit',(t=>{const e=I(t);if(!e)return;const n=D(e)&&!e.dataset.hcaptchaBound&&!e.dataset.recaptchaBound,o=_(e),c=g().includes(e)&&(!o||!o.value);(n||c)&&t.preventDefault(),c&&!n&&(function(t){try{if(!f())return;!function(t){const e=f();if(!e)return;const n=_(t);if(!n)return;const o=n.value;o&&e.removeItem(o)}(t);const e=Array.from(Array(32),(()=>Math.random().toString(36)[2])).join('');!function(t,e){_(t)||t.append(Object.assign(document.createElement('input'),{type:'hidden',name:u})),t.elements[u].value=e}(t,e),function(t,e){const n=f();if(!n)return;const o=[...t.querySelectorAll(`input[type='${i}']`)].map((({name:t})=>t)),c=[...d,...o],r={};for(const[a,s]of new FormData(t).entries())c.includes(a)||(r[a]=s);n.setItem(e,JSON.stringify({[m]:1,action:t.action,data:r}))}(t,e)}catch(e){console.error('failed to persist form',e)}}(e),e.submit())}));const S=(t,e)=>{t&&!t.dataset[E]&&(n(t,e.some((e=>e===t))),T(t))};for(const o of['focusin','change'])t.addEventListener(o,(t=>{const e=I(t);D(e)&&S(e,y())}));const B=e.get('form_key'),M=e.get(l),P=B&&M;t.addEventListener('DOMContentLoaded',(()=>{const t=y();if(P)for(const e of t)e.elements[l].value===M&&p(e,B);[...new Set([...A(),...v().filter((t=>'true'===t.dataset.shopifyCaptcha))])].forEach((e=>S(e,t)))}))}(h,new URLSearchParams(w.location.search),n,t,e,['guest_login'])})(!0,!0)}();</script>
vendor: 1 bytes, line 718
718
719<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//niallhoran.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 719
719
720<script>(function () {var userAgent = navigator.userAgent;var platform = navigator.platform;var maxTouchPoints = navigator.maxTouchPoints || 0;var isIOS = /iPad|iPhone|iPod/.test(platform) || (platform === 'MacIntel' && maxTouchPoints > 1);var isMacSafari = platform.indexOf('Mac') === 0 && /Safari/.test(userAgent) && !/Chrome|Chromium|CriOS|FxiOS|Edg|OPR|Android/.test(userAgent);var isAppleSafari = isIOS || isMacSafari;if (isAppleSafari) {fetch('/sf_private_access_tokens' + location.search).catch(function () {});}function browserMajorVersion(pattern) {var match = userAgent.match(pattern);return match ? parseInt(match[1], 10) : null;}function shouldLoadAutosizesPolyfill() {if (!window.PerformanceObserver?.supportedEntryTypes?.includes('paint')) {return false;}var chromeVersion = browserMajorVersion(/Chrome\/(\d+)/);if (chromeVersion !== null) {return chromeVersion < 126;}var firefoxVersion = browserMajorVersion(/Firefox\/(\d+)/);if (firefoxVersion !== null) {return firefoxVersion < 150;}var safariVersion = isAppleSafari ? browserMajorVersion(/Version\/(\d+).*Safari\//) : null;if (safariVersion !== null) {return safariVersion < 27;}return true;}if (shouldLoadAutosizesPolyfill()) {var autosizesScript = document.createElement('script');autosizesScript.async = true;autosizesScript.crossOrigin = 'anonymous';autosizesScript.src = "//niallhoran.com/cdn/shopifycloud/storefront/assets/storefront/autosizes-84416378.js";(document.head || document.documentElement).appendChild(autosizesScript);}window.ShopifyAnalytics = window.ShopifyAnalytics || {};window.ShopifyAnalytics.performance = window.ShopifyAnalytics.performance || {};(function () {var LONG_FRAME_THRESHOLD = 50;var longAnimationFrames = [];var activeRafId = null;function collectLongFrames() {var previousTime = null;function rafMonitor(now) {if (activeRafId === null) {return;}var delta = now - previousTime;if (delta > LONG_FRAME_THRESHOLD) {longAnimationFrames.push({startTime: previousTime,endTime: now,});}previousTime = now;activeRafId = requestAnimationFrame(rafMonitor);}previousTime = performance.now();activeRafId = requestAnimationFrame(rafMonitor);}if (!window.PerformanceObserver?.supportedEntryTypes?.includes('long-animation-frame')) {collectLongFrames();var timeoutId = setTimeout(function () {cancelAnimationFrame(activeRafId);}, 10000);window.ShopifyAnalytics.performance.getLongAnimationFrames = function (stopCollection) {if (stopCollection === undefined) {stopCollection = false;}if (stopCollection) {clearTimeout(timeoutId);cancelAnimationFrame(activeRafId);}return longAnimationFrames;};}})();})();</script>
720<script crossorigin="anonymous" defer="defer" src="//niallhoran.com/cdn/shopifycloud/storefront/assets/shopify_pay/storefront-616277c7.js?v=20250812"></script>
vendor: 1 bytes, line 720
720
721<script id="shopify-origin-trials" async="async" integrity="sha256-qJbe/jEZBHtr5W/BlA2cKAz3vkXu6vJQyLjgvgCC86g=" src="//cdn.shopify.com/shopifycloud/storefront/assets/storefront/origin_trials-318ab40a.js" crossorigin="anonymous" onload="window.__shopifyOriginTrialsDone = true" onerror="window.__shopifyOriginTrialsDone = true"></script>
vendor: 1 bytes, line 721
721
722<script>
723  window.Shopify = window.Shopify || {};
724  window.Shopify.MCP = window.Shopify.MCP || {};
725  window.Shopify.MCP.enabled = true;
726  window.Shopify.MCP.shop = "niall-horan.myshopify.com";
727  window.Shopify.MCP.mcpEndpoint = "https:\/\/niallhoran.com\/api\/mcp";
728  window.Shopify.MCP.tools = [{"name":"search_shop_policies_and_faqs","description":"Used to get facts about the stores policies, products, or services.\nSome examples of questions you can ask are:\n  - What is your return policy?\n  - What is your shipping policy?\n  - What is your phone number?\n  - What are your hours of operation?\"\n","inputSchema":{"$schema":"https:\/\/json-schema.org\/draft\/2020-12\/schema","type":"object","properties":{"query":{"type":"string","description":"A natural language query."},"context":{"type":"string","description":"Additional information about the request such as user demographics, mood, location, or other relevant details that could help in tailoring the response appropriately."}},"required":["query"]}}];
729</script>
vendor: 1 bytes, line 729
729
730<script>(()=>{var d="shopify:webmcp_adapter_loaded",n=Symbol.for("shopify.webmcp_adapter_loading");function s(c,a,{win:r=window,doc:o=document}={}){function p(){try{return r.localStorage.getItem(d)==="true"}catch{return!1}}function l(){try{r.localStorage.setItem(d,"true")}catch{}}function u(){return typeof(o.modelContext||r.navigator?.modelContext)?.registerTool=="function"}function f(){if(r[n]||!u())return;let t=o.head||o.getElementsByTagName("head")[0];if(!t)return;let e=o.createElement("script");e.type="module",e.crossOrigin="anonymous",a&&(e.integrity=a),e.src=c,e.addEventListener("load",l,{once:!0}),e.addEventListener("error",()=>{r[n]=!1},{once:!0}),t.appendChild(e),r[n]=!0}function _(t){let e=o.getElementById("shopify-origin-trials");if(!e||r.__shopifyOriginTrialsDone){t();return}e.addEventListener("load",t,{once:!0}),e.addEventListener("error",t,{once:!0})}function i(){_(()=>r.setTimeout(f,0))}function m(){o.addEventListener("DOMContentLoaded",i,{once:!0})}p()?i():m()}s("\/\/niallhoran.com\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})();
731</script>
vendor: 1 bytes, line 731
731
732<script data-source-attribution="shopify.dynamic_checkout.dynamic.init">var Shopify=Shopify||{};Shopify.PaymentButton=Shopify.PaymentButton||{isStorefrontPortableWallets:!0,init:function(){window.Shopify.PaymentButton.init=function(){};var t=document.createElement("script");t.src="https://niallhoran.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}};
733</script>
vendor: 1 bytes, line 733
733
734<script data-source-attribution="shopify.dynamic_checkout.buyer_consent">
735  function portableWalletsHideBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.add("hidden"),t.setAttribute("aria-hidden","true"),n.removeEventListener("click",e))}function portableWalletsShowBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.remove("hidden"),t.removeAttribute("aria-hidden"),n.addEventListener("click",e))}window.Shopify?.PaymentButton&&(window.Shopify.PaymentButton.hideBuyerConsent=portableWalletsHideBuyerConsent,window.Shopify.PaymentButton.showBuyerConsent=portableWalletsShowBuyerConsent);
736</script>
vendor: 1 bytes, line 736
736
737<script data-source-attribution="shopify.dynamic_checkout.cart.bootstrap">document.addEventListener("DOMContentLoaded",(function(){function t(){return document.querySelector("shopify-accelerated-checkout-cart, shopify-accelerated-checkout")}if(t())Shopify.PaymentButton.init();else{new MutationObserver((function(e,n){t()&&(Shopify.PaymentButton.init(),n.disconnect())})).observe(document.body,{childList:!0,subtree:!0})}}));
738</script>
738
739<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://niallhoran.com/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous">
740<style id="shopify-accelerated-checkout-cart">
741        #shopify-buyer-consent {
742  margin-top: 1em;
743  display: inline-block;
744  width: 100%;
745}
746
747#shopify-buyer-consent.hidden {
748  display: none;
749}
750
751#shopify-subscription-policy-button {
752  background: none;
753  border: none;
754  padding: 0;
755  text-decoration: underline;
756  font-size: inherit;
757  cursor: pointer;
758}
759
760#shopify-subscription-policy-button::before {
761  box-shadow: none;
762}
763
764      </style>
765
766<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
766 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Afacad:ital,wght@0,400..700;1,400..700&display=swap" rel="stylesheet"><link rel="stylesheet" href="https://cdn.rhythm.umgapps.com/fonts/family/mister-k-pro-onstage/stylesheet.css"><style>
767  dialog[open]::backdrop,
768  .umg-backdrop {
769    
770      --theme-color: ;
771      background: hsl(96 6% 17% / 0.4);
772      -webkit-backdrop-filter: blur(10px);
773      backdrop-filter: blur(10px);
774  }
775  
776  #PBarNextFrameWrapper::backdrop,
777  #web-pixels-helper-sandbox-container::backdrop {
778    --theme-color: unset;
779    background: unset;
780    -webkit-backdrop-filter: unset;
781    backdrop-filter: unset;
782  }
783</style><link href="//niallhoran.com/cdn/shop/t/56/assets/styles.bundle.css?v=123113474112260865601789132636" rel="stylesheet" type="text/css" media="print" id="styles_css_bundle" onload="this.media=`all`;this.removeAttribute(`onload`)" />
784  <noscript><link href="//niallhoran.com/cdn/shop/t/56/assets/styles.bundle.css?v=123113474112260865601789132636" rel="stylesheet" type="text/css" media="all" id="styles_css_bundle" /></noscript>
784<script defer="defer" src="//niallhoran.com/cdn/shop/t/56/assets/alpine.bundle.js?v=171037108278180649291789132637"></script>
784<style data-shopify>/* product background images */ 
785.grid--product .grid-item__wrapper .product_card .card__image,
786  .product-grid .product_card .card__image,
787  .pdp-media__wrapper .pdp-image-wrapper {
788background-color: #f2eadd;
789  }
790.grid--product > .grid-item__wrapper,
791.product-grid > .grid-layout > .product_card {
792  height: auto;
793}
794
795.grid--product,
796.product-grid > .grid-layout {
797  column-gap: var(--gap-container-2xs);
798}
799
800.cart-drawer__innerwrapper{
801padding: 20px;}
802
803.cart-drawer .c-border-primary {
804    --color-border: var(--color-primary);
805}
806
807/* homepage: custom logo section */
808@media (max-width: 767px) {
809  .custom-logo-section.no-hover .text-banner__spacing {
810    padding-bottom: 0;
811  }
812  .custom-logo-section.no-hover .media-section__wrapper {
813    row-gap: 0;
814  }
815  .custom-logo-section.no-hover .media-item-image-overlay {
816    padding: 1rem 0;
817  }
818  .custom-logo-section.no-hover .media-item-image-overlay.visible .image__adaptive.group-hover\:opacity-0 {
819    opacity: 0;
820  }
821  .custom-logo-section.no-hover .media-item-image-overlay.visible .image__adaptive.group-hover\:opacity-100 {
822    opacity: 1;
823  }
824}</style><link rel="apple-touch-icon" sizes="180x180" href="//niallhoran.com/cdn/shop/files/meta_favi.png?crop=center&height=180&v=1772636707&width=180">
825    <link rel="icon" href="//niallhoran.com/cdn/shop/files/meta_favi.png?crop=center&height=32&v=1772636707&width=32"><meta name="description" content="Shop the Official Niall Horan Online store for exclusive Niall Horan music products.">
826
827  <meta property="og:site_name" content="Niall Horan Official Store">
828  <meta property="og:url" content="https://niallhoran.com/cart">
829  <meta property="og:title" content="Your Shopping Cart - Niall Horan Official Store">
830  <meta property="og:type" content="website">
831  <meta property="og:description" content="Shop the Official Niall Horan Online store for exclusive Niall Horan music products."><meta property="og:image" content="http://niallhoran.com/cdn/shop/files/NH-DP-share.png?v=1773856182">
832  <meta property="og:image:secure_url" content="https://niallhoran.com/cdn/shop/files/NH-DP-share.png?v=1773856182">
833  <meta property="og:image:width" content="1200">
834  <meta property="og:image:height" content="630"><meta name="twitter:card" content="summary_large_image">
835  <meta name="twitter:title" content="Your Shopping Cart - Niall Horan Official Store">
836  <meta name="twitter:description" content="Shop the Official Niall Horan Online store for exclusive Niall Horan music products.">
836<script>
837      window.dotDigital = {
838        shopDomain: 'niallhoran.com',
839        insightId: 'DM-8405741404-02'
840      }
841    </script>
841<script defer="defer" src="//niallhoran.com/cdn/shop/t/56/assets/dot-digital.bundle.js?v=111676681593682757461789132637"></script>
841<!-- BEGIN app block: shopify://apps/privy-pop-ups-email-sms/blocks/privy-convert-production/1d8599fa-4edf-4071-bda6-4d5d6d82de9c -->
841<script src="https://shopify.privy.com/widget.js?shop=niall-horan.myshopify.com"></script>
841
842
843<!-- END app block --><link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
844<script>(function(){if ("sendBeacon" in navigator && "performance" in window) {try {var session_token_from_headers = performance.getEntriesByType('navigation')[0].serverTiming.find(x => x.name == '_s').description;} catch {var session_token_from_headers = undefined;}var session_cookie_matches = document.cookie.match(/_shopify_s=([^;]*)/);var session_token_from_cookie = session_cookie_matches && session_cookie_matches.length === 2 ? session_cookie_matches[1] : "";var session_token = session_token_from_headers || session_token_from_cookie || "";function handle_abandonment_event(e) {var entries = performance.getEntries().filter(function(entry) {return /monorail-edge.shopifysvc.com/.test(entry.name);});if (!window.abandonment_tracked && entries.length === 0) {window.abandonment_tracked = true;var currentMs = Date.now();var navigation_start = performance.timing.navigationStart;var payload = {shop_id: 23650831,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "cart"};window.navigator.sendBeacon("https://monorail-edge.shopifysvc.com/v1/produce", JSON.stringify({schema_id: "online_store_buyer_site_abandonment/1.1",payload: payload,metadata: {event_created_at_ms: currentMs,event_sent_at_ms: currentMs}}));}}window.addEventListener('pagehide', handle_abandonment_event);}}());</script>
vendor: 1 bytes, line 844
844
845<script>
846  window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || [];
847</script>
vendor: 1 bytes, line 847
847
848<script>(function(){var wpmLoader=function(){"use strict";var e=/Googlebot|Storebot-Google|bingbot|Baiduspider|YandexBot|DuckDuckBot|Slurp|facebookexternalhit|Twitterbot|LinkedInBot|Applebot|AdsBot-Google|Mediapartners-Google|APIs-Google|PetalBot|SemrushBot|AhrefsBot|MJ12bot|DotBot|Acunetix|PerplexityBot|Perplexity-User/i,t=/bytedance/i;function i(){try{var e=document.cookie;if(!e||"string"!=typeof e)return;for(var t=0,i=e.split(";");t<i.length;t++){var n=i[t],r=n.indexOf("=");if(-1!==r){var o=n.slice(0,r).trim();if(o){var a=void 0;try{a=decodeURIComponent(o)}catch(e){a=o}if("_shopify_s"===a){var d=n.slice(r+1).trim();try{return decodeURIComponent(d)}catch(e){return d}}}}}return}catch(e){return}}function n(e){try{"undefined"!=typeof console&&"function"==typeof console.warn&&console.warn(e)}catch(e){}}function r(e,t){return"string"==typeof e&&e.length>0&&e.length<=t?e:void 0}function o(e){var t;switch(null==(t=null==e?void 0:e.navigation)?void 0:t.type){case 0:return"navigate";case 1:return"reload";case 2:return"back_forward";default:return}}function a(){var e,t,i;try{var n=null==(i=null==(t=null==(e=self.ShopifyAnalytics)?void 0:e.lib)?void 0:t.trekkie)?void 0:i.state;return"awaiting-consent"===n||"initialized"===n?n:void 0}catch(e){return}}return function(d,s,u,l){var c=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{};try{var p=c.trekkieShim;!0!==p&&"true"!==p||null!=window.__TREKKIE_SHIM_QUEUE||(window.__TREKKIE_SHIM_QUEUE=[])}catch(e){}var f,v,h,y,g=(v=(f={modern:/Edge?\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Firefox\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Chrom(ium|e)\/(9{2}|\d{3,})\.\d+(\.\d+|)|(Maci|X1{2}).+ Version\/(15\.\d+|(1[6-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(9{2}|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(15[._]\d+|(1[6-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|SamsungBrowser\/([2-9]\d|\d{3,})\.\d+/,legacy:/Edge?\/(1[6-9]|[2-9]\d|\d{3,})\.\d+(\.\d+|)|Firefox\/(5[4-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)|Chrom(ium|e)\/(5[1-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)([\d.]+$|.*Safari\/(?![\d.]+ Edge\/[\d.]+$))|(Maci|X1{2}).+ Version\/(10\.\d+|(1[1-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(3[89]|[4-9]\d|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(10[._]\d+|(1[1-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Mobile Safari.+OPR\/([89]\d|\d{3,})\.\d+\.\d+|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+(UC? ?Browser|UCWEB|U3)[ /]?(15\.([5-9]|\d{2,})|(1[6-9]|[2-9]\d|\d{3,})\.\d+)\.\d+|SamsungBrowser\/(5\.\d+|([6-9]|\d{2,})\.\d+)|Android.+MQ{2}Browser\/(14(\.(9|\d{2,})|)|(1[5-9]|[2-9]\d|\d{3,})(\.\d+|))(\.\d+|)|K[Aa][Ii]OS\/(3\.\d+|([4-9]|\d{2,})\.\d+)(\.\d+|)/}).modern,h=f.legacy,(y=navigator.userAgent).match(e)?"bot":y.match(v)?"modern":y.match(h)?"legacy":y.match(t)?"bot":"unknown"),m=function(e){var t,i,n=r(e,128);try{var a=window.performance,d=null==(t=null==a?void 0:a.getEntriesByType)?void 0:t.call(a,"navigation")[0];if(!d)return{requestId:n,navigationType:o(a)};var s="type"in d?r(d.type,64):void 0,u="serverTiming"in d&&Array.isArray(d.serverTiming)?d.serverTiming:[];return{requestId:null!=n?n:r(null==(i=u.find(function(e){return"requestID"===e.name}))?void 0:i.description,128),navigationType:s}}catch(e){return{requestId:n}}}(c.requestId),w=function(e){var t=e.version,r=e.browserTarget,o=e.surface,a=e.shopId,d=e.monorailEndpoint,s=window.location.href;return{emit:function(e){var u=e.status,l=e.errorMsg,c=e.failureReason,p=e.useKeepaliveFallback,f=void 0!==p&&p,v=e.navigationType,h=e.pagehidePersisted,y=e.requestId,g=e.trekkieState;if(d){var m,w;try{var b=(new Date).getTime();m=JSON.stringify({metadata:{event_sent_at_ms:b},events:[{schema_id:"web_pixels_manager_load/3.3",payload:{version:t,bundle_target:r,page_url:s,status:u,surface:o,error_msg:l,failure_reason:c,navigation_type:v,pagehide_persisted:h,request_id:y,trekkie_state:g,shop_id:a,visit_token:i()},metadata:{event_created_at_ms:b}}]})}catch(e){return}try{if("function"==typeof window.navigator.sendBeacon&&-1===(w=window.navigator.userAgent).indexOf("iPhone; CPU iPhone OS 12_")&&-1===w.indexOf("iPad; CPU OS 12_")&&-1===w.indexOf("iPod touch; CPU iPhone OS 12_")&&window.navigator.sendBeacon.bind(window.navigator)(d,m))return}catch(e){}if(f)try{"function"==typeof window.fetch&&window.fetch(d,{method:"POST",headers:{"Content-Type":"text/plain"},body:m,keepalive:!0}
848).catch(function(){})}catch(e){}else try{var _=new XMLHttpRequest;_.open("POST",d,!0),_.setRequestHeader("Content-Type","text/plain"),_.send(m)}catch(e){n("[Web Pixels Manager] Got an unhandled error while logging to Monorail.")}}else n("[Web Pixels Manager] No Monorail endpoint provided, skipping logging.")}}}({version:u,browserTarget:g,surface:d.surface,shopId:d.shopId,monorailEndpoint:d.monorailEndpoint});if(Boolean(null==(_=null==(b=window.Shopify)?void 0:b.analytics)?void 0:_.replayQueue))w.emit({status:"setup-skipped",errorMsg:"replay queue already initialized."});else{var b,_;w.emit({status:"setup-started"}),window.Shopify=window.Shopify||{};var S=window.Shopify;S.analytics=S.analytics||{};var P=S.analytics;P.replayQueue=[],P.publish=function(e,t,i){return P.replayQueue.push([e,t,i]),!0};try{self.performance.mark("wpm:start")}catch(e){}var k,C="modern"===g?"modern":"legacy",E=(null!=l?l:{modern:"",legacy:""})[C],I=[(k={baseUrl:s,hashVersion:u,buildTarget:C}).baseUrl,"/wpm","/b",k.hashVersion,"modern"===k.buildTarget?"m":"l",".js"].join(""),O=!1,T=!1;try{c.browserTarget=g,function(){O=!0;try{window.addEventListener("pagehide",M)}catch(e){O=!1}}(),R(function(){try{R(x)}catch(e){D(e)}}),w.emit({status:"loading",requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()})}catch(e){D(e)}}function U(){var e;if(q(),!function(){var e,t;return Boolean(null==(t=null==(e=window.Shopify)?void 0:e.analytics)?void 0:t.initialized)}()){var t,i,n;try{if("function"!=typeof(null==(e=window.webPixelsManager)?void 0:e.init))return void A();if(!(null!==(n=i=t=window.webPixelsManager.init(d))&&"function"!=typeof n&&Object(n)===n&&"publish"in i&&"function"==typeof i.publish&&"publishCustomEvent"in i&&"function"==typeof i.publishCustomEvent&&"visitor"in i&&"function"==typeof i.visitor))return void A()}catch(e){return void A(e)}var r=window.Shopify.analytics;r.replayQueue.forEach(function(e){var i=e[0],n=e[1],r=e[2];t.publishCustomEvent(i,n,r)}),r.replayQueue=[],r.publish=t.publishCustomEvent,r.visitor=t.visitor,r.initialized=!0}}function A(e){B("manager_api_unavailable",void 0===e?void 0:Q(e))}function x(){B("script_load_failed","".concat(I," has failed to load"))}function B(e,t){T||(T=!0,q(),w.emit({status:"failed",errorMsg:t,failureReason:e,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function M(e){O&&(q(),w.emit({status:"pagehide-while-loading",useKeepaliveFallback:!0,pagehidePersisted:e.persisted,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function q(){O=!1;try{window.removeEventListener("pagehide",M)}catch(e){}}function R(e){var t;!function(e){var t=e.src,i=e.async,n=void 0===i||i,r=e.onload,o=e.onerror,a=e.sri,d=e.scriptDataAttributes,s=void 0===d?{}:d,u=document.createElement("script"),l=document.querySelector("head"),c=document.querySelector("body");if(u.async=n,u.src=t,a&&(u.integrity=a,u.crossOrigin="anonymous"),s)for(var p in s)if(Object.prototype.hasOwnProperty.call(s,p))try{u.dataset[p]=String(s[p])}catch(e){}if(r&&u.addEventListener("load",r),o&&u.addEventListener("error",o),l)l.appendChild(u);else{if(!c)throw new Error("Did not find a head or body element to append the script");c.appendChild(u)}}({src:I,async:!0,onload:U,onerror:e,sri:(t=E,"string"==typeof t&&/^sha384-[A-Za-z0-9+/=]+$/.test(t)?E:""),scriptDataAttributes:c})}function D(e){B("script_append_failed",Q(e))}function Q(e){return e instanceof Error?e.message:"Unknown error"}}}();wpmLoader({shopId: 23650831,storefrontBaseUrl: "https://niallhoran.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://niallhoran.com/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab","8450a54b","7ee89bf1"],webPixelsConfigList: [{"id":"2759655794","configuration":"{\"storeIdentity\":\"niall-horan.myshopify.com\",\"baseURL\":\"https:\\\/\\\/api.printful.com\\\/shopify-pixels\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"74f275712857ab41bea9d998dcb2f9da","type":"APP","apiClientId":156624,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"2552660338","configuration":"{\"forter_site_id\":\"98110a8cd268\"}","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"7e4b4da7292f3a5a38b14e41b6ff19b5","type":"APP","apiClientId":332912361473,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_phone","read_customer_personal_data"],"dataSharingControls":["share_all_events"]}
848,"dataSharingState":"unrestricted"},{"id":"1912734066","configuration":"{\"businessId\":\"81D92FF892D0157F897EF54E\",\"environment\":\"production\",\"debug\":\"false\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"5a8ca3d2c8c198d27ce52b5826353789","type":"APP","apiClientId":861484,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"951681394","configuration":"{\"pixel_id\":\"845371127371805\",\"pixel_type\":\"facebook_pixel\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"96420dbe9ea96c426a1b7f364f977719","type":"APP","apiClientId":2329312,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"743604594","configuration":"{\"config\":\"{\\\"google_tag_ids\\\":[\\\"GT-PZZHHJV\\\",\\\"AW-11016326792\\\",\\\"AW-802230609\\\",\\\"AW-11039080362\\\"],\\\"target_country\\\":\\\"US\\\",\\\"gtag_events\\\":[{\\\"type\\\":\\\"begin_checkout\\\",\\\"action_label\\\":[\\\"AW-11016326792\\\",\\\"AW-17542671235\\\",\\\"AW-745526989\\\",\\\"AW-11016255997\\\",\\\"AW-11016281377\\\",\\\"AW-789861424\\\",\\\"AW-11016277261\\\",\\\"AW-802230609\\\",\\\"AW-11039080362\\\"]},{\\\"type\\\":\\\"search\\\",\\\"action_label\\\":[\\\"AW-11016326792\\\",\\\"AW-17542671235\\\",\\\"AW-745526989\\\",\\\"AW-11016255997\\\",\\\"AW-11016281377\\\",\\\"AW-789861424\\\",\\\"AW-11016277261\\\",\\\"AW-802230609\\\",\\\"AW-11039080362\\\"]},{\\\"type\\\":\\\"view_item\\\",\\\"action_label\\\":[\\\"MC-EJE4HLZLHE\\\",\\\"AW-11016326792\\\",\\\"AW-17542671235\\\",\\\"AW-745526989\\\",\\\"AW-11016255997\\\",\\\"AW-11016281377\\\",\\\"AW-789861424\\\",\\\"AW-11016277261\\\",\\\"AW-802230609\\\",\\\"AW-11039080362\\\"]},{\\\"type\\\":\\\"purchase\\\",\\\"action_label\\\":[\\\"MC-EJE4HLZLHE\\\",\\\"AW-11016326792\\\/WC9WCIOJqdQcEIid_4Qp\\\",\\\"AW-11039080362\\\/OubUCNPeiakYEKr_648p\\\",\\\"AW-11016326792\\\",\\\"AW-17542671235\\\",\\\"AW-745526989\\\",\\\"AW-11016255997\\\",\\\"AW-11016281377\\\",\\\"AW-789861424\\\",\\\"AW-11016277261\\\",\\\"AW-802230609\\\",\\\"AW-11039080362\\\"]},{\\\"type\\\":\\\"page_view\\\",\\\"action_label\\\":[\\\"MC-EJE4HLZLHE\\\",\\\"AW-11016326792\\\",\\\"AW-17542671235\\\",\\\"AW-745526989\\\",\\\"AW-11016255997\\\",\\\"AW-11016281377\\\",\\\"AW-789861424\\\",\\\"AW-11016277261\\\",\\\"AW-802230609\\\",\\\"AW-11039080362\\\"]},{\\\"type\\\":\\\"add_payment_info\\\",\\\"action_label\\\":[\\\"AW-11016326792\\\",\\\"AW-17542671235\\\",\\\"AW-745526989\\\",\\\"AW-11016255997\\\",\\\"AW-11016281377\\\",\\\"AW-789861424\\\",\\\"AW-11016277261\\\",\\\"AW-802230609\\\",\\\"AW-11039080362\\\"]},{\\\"type\\\":\\\"add_to_cart\\\",\\\"action_label\\\":[\\\"AW-11039080362\\\/NcMZCKeai-AcEKr_648p\\\",\\\"AW-11016326792\\\",\\\"AW-17542671235\\\",\\\"AW-745526989\\\",\\\"AW-11016255997\\\",\\\"AW-11016281377\\\",\\\"AW-789861424\\\",\\\"AW-11016277261\\\",\\\"AW-802230609\\\",\\\"AW-11039080362\\\"]}],\\\"enable_monitoring_mode\\\":false}\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"a3321ca85cf5aaf6b57585fcd8d67b3a","type":"APP","apiClientId":1780363,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"241500243","configuration":"{\"gtm_id\":\"GTM-T4SPZ5\"}","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"9c02f134f72408f0926e349d50d5e1fe","type":"APP","apiClientId":37773246465,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_phone","read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"shopify-app-pixel","configuration":"{}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"APP","privacyPurposes":["ANALYTICS","MARKETING"]},{"id":"shopify-custom-pixel","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING"]}],isMerchantRequest: false,initData: {"shop":{"name":"Niall Horan Official Store","paymentSettings":{"currencyCode":"USD"},"myshopifyDomain":"niall-horan.myshopify.com","countryCode":"US","storefrontUrl":"https:\/\/niallhoran.com"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[],"purchasingCompany":null},},"https://niallhoran.com/cdn","5982071ew7ea472e3p69b68784m2150dfea",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"true","themeId":"193643905394","themePublished":"true","eventMetadataId":"d7a213f6-79a1-4b2f-8949-e2334b1a4480","pageType":"cart","shopId":"23650831","storefrontBaseUrl":"https:\/\/niallhoran.com","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"4c64608a\", \"16072cab\", \"8450a54b\", \"7ee89bf1\"]","isMerchantRequest":"false","hashVersion":"5982071ew7ea472e3p69b68784m2150dfea","publish":"custom","events":"[[\"page_viewed\",{}]]"});})();</script>
848<script>
849  window.ShopifyAnalytics = window.ShopifyAnalytics || {};
850  window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
851  window.ShopifyAnalytics.meta.currency = 'USD';
852  var meta = {"page":{"pageType":"cart","requestId":"9c5e89d5-11c4-4a46-8bba-b55ea0ff712b-1790927035"}};
853  for (var attr in meta) {
854    window.ShopifyAnalytics.meta[attr] = meta[attr];
855  }
856</script>
vendor: 1 bytes, line 856
856
857<script class="analytics">
858  (function () {
859    var customDocumentWrite = function(content) {
860      var jquery = null;
861
862      if (window.jQuery) {
863        jquery = window.jQuery;
864      } else if (window.Checkout && window.Checkout.$) {
865        jquery = window.Checkout.$;
866      }
867
868      if (jquery) {
869        jquery('body').append(content);
870      }
871    };
872
873    var hasLoggedConversion = function(token) {
874      if (token) {
875        return document.cookie.indexOf('loggedConversion=' + token) !== -1;
876      }
877      return false;
878    }
879
880    var setCookieIfConversion = function(token) {
881      if (token) {
882        var twoMonthsFromNow = new Date(Date.now());
883        twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
884
885        document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
886      }
887    }
888
889    var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
890    window.ShopifyAnalytics.lib.trekkie = window.trekkie;
891    if (trekkie.integrations) {
892      return;
893    }
894    trekkie.methods = [
895      'identify',
896      'page',
897      'ready',
898      'track',
899      'trackForm',
900      'trackLink'
901    ];
902    trekkie.factory = function(method) {
903      return function() {
904        var args = Array.prototype.slice.call(arguments);
905        args.unshift(method);
906        trekkie.push(args);
907        if (method == 'track' || method == 'page') {
908          var pageUrl;
909          try {
910            pageUrl = window.location.href;
911          } catch (e) {}
912          var pageReferrer;
913          try {
914            pageReferrer = document.referrer;
915          } catch (e) {}
916          try {
917            if (window.__TREKKIE_SHIM_QUEUE == null) {
918              window.__TREKKIE_SHIM_QUEUE = [];
919            }
920            window.__TREKKIE_SHIM_QUEUE.push({
921              from: 'trekkie-stub',
922              method: method,
923              args: args.slice(1),
924              pageContext: {
925                url: pageUrl,
926                referrer: pageReferrer
927              }
928            });
929          } catch (e) {
930            // no-op
931          }
932        }
933        return trekkie;
934      };
935    };
936    for (var i = 0; i < trekkie.methods.length; i++) {
937      var key = trekkie.methods[i];
938      trekkie[key] = trekkie.factory(key);
939    }
940    trekkie.load = function(config) {
941      trekkie.config = config || {};
942      trekkie.config.initialDocumentCookie = document.cookie;
943      var first = document.getElementsByTagName('script')[0];
944var script = document.createElement('script');
945script.type = 'text/javascript';
946script.onerror = function(e) {
947  var scriptFallback = document.createElement('script');
948  scriptFallback.type = 'text/javascript';
949  scriptFallback.onerror = function(error) {
950          var Monorail = {
951      produce: function produce(monorailDomain, schemaId, payload) {
952        var currentMs = new Date().getTime();
953        var event = {
954          schema_id: schemaId,
955          payload: payload,
956          metadata: {
957            event_created_at_ms: currentMs,
958            event_sent_at_ms: currentMs
959          }
960        };
961        return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
962      },
963      sendRequest: function sendRequest(endpointUrl, payload) {
964        // Try the sendBeacon API
965        if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
966          var blobData = new window.Blob([payload], {
967            type: 'text/plain'
968          });
969
970          if (window.navigator.sendBeacon(endpointUrl, blobData)) {
971            return true;
972          } // sendBeacon was not successful
973
974        } // XHR beacon
975
976        var xhr = new XMLHttpRequest();
977
978        try {
979          xhr.open('POST', endpointUrl);
980          xhr.setRequestHeader('Content-Type', 'text/plain');
981          xhr.send(payload);
982        } catch (e) {
983          console.log(e);
984        }
985
986        return false;
987      },
988      isIos12: function isIos12() {
989        return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
990      }
991    };
992    Monorail.produce('monorail-edge.shopifysvc.com',
993      'trekkie_storefront_load_errors/1.1',
994      {shop_id: 23650831,
995      theme_id: 193643905394,
996      app_name: "storefront",
997      context_url: window.location.href,
998      source_url: "//niallhoran.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js"});
999
1000  };
1001  scriptFallback.async = true;
1002  scriptFallback.src = '//niallhoran.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js';
1003  first.parentNode.insertBefore(scriptFallback, first);
1004};
1005script.async = true;
1006script.src = '//niallhoran.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js';
1007first.parentNode.insertBefore(script, first);
1008
1009    };
1010    trekkie.load(
1011      {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":23650831,"isMerchantRequest":null,"themeId":193643905394,"themeCityHash":"2767296043132004556","contentLanguage":"en","currency":"USD","eventMetadataId":"d7a213f6-79a1-4b2f-8949-e2334b1a4480"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","7ee89bf1","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":true,"source":"trekkie-storefront-renderer","apiClientId":580111}}
1012    );
1013
1014    var loaded = false;
1015    trekkie.ready(function() {
1016      if (loaded) return;
1017      loaded = true;
1018
1019      window.ShopifyAnalytics.lib = window.trekkie;
1020
1021      var originalDocumentWrite = document.write;
1022      document.write = customDocumentWrite;
1023      try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
1024      document.write = originalDocumentWrite;
1025
1026      var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
1027      var token = match? match[1]: undefined;
1028      if (!hasLoggedConversion(token)) {
1029        setCookieIfConversion(token);
1030        
1031      }
1032    });
1033
1034    window.ShopifyAnalytics.lib.page(null,{"pageType":"cart","requestId":"9c5e89d5-11c4-4a46-8bba-b55ea0ff712b-1790927035","shopifyEmitted":true});
1035
1036    var eventsListenerScript = document.createElement('script');
1037    eventsListenerScript.async = true;
1038    eventsListenerScript.src = "//niallhoran.com/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js";
1039    document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
1040})();</script>
vendor: 1 bytes, line 1040
1040
1041<script
1042  defer
1043  src="https://niallhoran.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.4.min.js"
1044  data-application="storefront-renderer"
1045  data-shop-id="23650831"
1046  data-render-region="gcp-us-central1"
1047  data-page-type="cart"
1048  data-theme-instance-id="193643905394"
1049  data-theme-name="Rhythm"
1050  data-theme-version="2026.09.1.0"
1051  data-monorail-region="shop_domain"
1052  data-resource-timing-sampling-rate="10"
1053  data-shs="true"
1054  data-shs-beacon="true"
1055  data-shs-export-with-fetch="true"
1056  data-shs-logs-sample-rate="1"
1057  data-shs-beacon-endpoint="https://niallhoran.com/api/collect"
1058></script>
1058
1059<meta name="shopify-y" content="7a5ec8e7-2adf-4af3-a95b-8a05391f286b" data-expiration="1822484635000"><meta name="shopify-s" content="db18b1d1-b30d-4da1-beca-2b9377078f22" data-expiration="1790928835000"><meta name="new-cookie-storage-activated" content="t">
1060</head><body class="template__cart flex flex-col grow min-h-full relative md:relative scheme-scheme1 c-bg-background c-text-content-base" data-theme="rhythm" data-themev="2026.09.1.0">
1061  <span class="sr-only" data-e2e="aria-countdown-change" aria-live="assertive"></span>
vendor: 67 bytes, line 1061
1061<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
1061GTM-T4SPZ5
vendor: 86 bytes, lines 1061-1062
1061"
1062    height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
1062<a class="skip-to-content-link button sr-only focus:not-sr-only" href="#MainContent">Skip to content</a><content-overlay>
1063  <div class="overlay hidden fixed top-0 left-0 w-full h-full z-[1000001] c-bg-gray-900 opacity-50"></div>
1064</content-overlay><!-- BEGIN sections: header-group -->
1065<header id="shopify-section-sections--28662239560050__header" class="shopify-section shopify-section-group-header-group site-header md:hidden">
1066<style data-shopify>
1067    body {
1068      --header-group-header-position: sticky;
1069    }
1070  </style>
1071<style>
1072	#shopify-section-sections--28662239560050__header {
1073		position: sticky;top: 0;z-index: 999997;
1074    width: 100%;
1075	}
1076	</style>
1077  
1077<script>document.getElementById('shopify-section-sections--28662239560050__header').classList.add('umg-sticky', 'transition-[transform]')</script>
1077
1078
1079
1080
1081
1082
1083
1084<div id="header-wrapper--28662239560050" class="header__wrapper scheme-scheme1 z-[10] mx-auto h-auto w-full section__wrapper scheme-scheme1 grid columns-1 rows-1 place-items-center relative z-0 overflow-visible c-bg-background c-text-content-base mb-none" x-data="{ hamburgerMenuOpen: false, searchBarOpen: false, dropDownMenuOpen: null }" data-position="dynamic_sticky_header" style=" --icon-width: 1.25rem; --icon-height: 1.25rem; ">
1085  <div id="header-container--28662239560050" class="header__container grid gap-y-sm-sm gap-x-sm-xs grid-cols-9 section-spacing mx-auto w-full relative z-10 py-container-xs px-lg-xs max-w-full md:px-container-xs md:max-w-full c-border-default-color border-none border-x-0 border-t-0 mx-auto text-center" >
1086    
1087      
1088          
1089
1090
1091
1092
1093<div  class="nav-drawer__block navigation-wrapper header__column flex col-span-3 justify-start" x-data="{ open: false, triggerRef: null, handleEscape(e){ this.triggerRef = e.target.closest('.nav-drawer__block')?.querySelector('.nav-drawer__toggle'); this.triggerRef?.focus(); this.open = false; } }" @keydown.escape.window="handleEscape">
1094  <button
1095    class="nav-drawer__overlay umg-backdrop fixed top-0 bottom-0 left-0 right-0 w-full h-full z-10"
1096    @click="open = false; $el.ownerDocument.body.classList.remove('overflow-hidden')"
1097    x-show="open"
1098    x-cloak
1099    :aria-label="open ? 'Close navigation menu' : 'Open navigation menu'"
1100    x-transition x-transition.opacity></button>
1101
1102  
1103
1104
1105
1106<button 
1107  class="nav-drawer__toggle grid items-center min-h-min-click-space min-w-min-click-space justify-center" 
1108  @click="open = ! open; $el.ownerDocument.body.classList.toggle('overflow-hidden')" 
1109  :aria-expanded="open"
1110  :aria-label="open ? 'Close navigation menu' : 'Open navigation menu'">
1111  <div class="row-start-1 col-start-1 nav-drawer__toggle--open " x-show="!open" x-transition>
1112    
1113
1114
1115
1116  
1117  
1118  
1119      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" class="icon icon--menu umg-icon" fill="currentColor">
1120        <path d="M0 96C0 78.3 14.3 64 32 64H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32C14.3 128 0 113.7 0 96zM0 256c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32zM448 416c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 14.3 32 32z"/>
1121      </svg>
1122    
1123
1124  </div>
1125  <div class="row-start-1 col-start-1 nav-drawer__toggle--close " x-show="open" x-cloak x-transition>
1126    
1127
1128
1129
1130  
1131  
1132  
1133      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512" class="icon icon--close umg-icon" fill="currentColor">
1134        <path d="M310.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L160 210.7 54.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L114.7 256 9.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L160 301.3 265.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L205.3 256 310.6 150.6z"/>
1135      </svg>
1136    
1137
1138  </div>
1139</button>
1140
1141  <div class="nav-drawer__menu flex flex-col fixed z-100 top-0 max-h-[100vh] bottom-0 w-[90%] max-w-[400px] transition duration-300 overflow-y-scroll c-bg-primary-on c-text-primary left-0" x-show="open" x-cloak x-transition:enter="transition ease-out duration-300"x-transition:enter-start="-translate-x-full"x-transition:enter-end="translate-x-0"x-transition:leave="transition ease-out duration-300"x-transition:leave-start="translate-x-0"x-transition:leave-end="-translate-x-full">
1142    <div class="flex justify-between md:justify-end p-lg-sm">
1143      
1144         <div x-html="$refs.logoContainer ? $refs.logoContainer.innerHTML : ''" class="logo-container flex justify-center items-center c-text-content-base"></div>
1145      
1146      
1147
1148
1149
1150<button 
1151  class="nav-drawer__toggle grid items-center min-h-min-click-space min-w-min-click-space justify-end c-text-content-base" 
1152  @click="open = ! open; $el.ownerDocument.body.classList.toggle('overflow-hidden')" 
1153  :aria-expanded="open"
1154  :aria-label="open ? 'Close navigation menu' : 'Open navigation menu'">
1155  <div class="row-start-1 col-start-1 nav-drawer__toggle--open " x-show="!open" x-transition>
1156    
1157
1158
1159
1160  
1161  
1162  
1163      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" class="icon icon--menu umg-icon" fill="currentColor">
1164        <path d="M0 96C0 78.3 14.3 64 32 64H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32C14.3 128 0 113.7 0 96zM0 256c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32zM448 416c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 14.3 32 32z"/>
1165      </svg>
1166    
1167
1168  </div>
1169  <div class="row-start-1 col-start-1 nav-drawer__toggle--close " x-show="open" x-cloak x-transition>
1170    
1171
1172
1173
1174  
1175  
1176  
1177      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512" class="icon icon--close umg-icon" fill="currentColor">
1178        <path d="M310.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L160 210.7 54.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L114.7 256 9.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L160 301.3 265.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L205.3 256 310.6 150.6z"/>
1179      </svg>
1180    
1181
1182  </div>
1183</button>
1184    </div>
1185    <ul class="gap-sm-sm">
1186
1187      
1188      
1189
1190      
1191
1192        
1193
1194        
1195
1196        
1197
1198        
1199
1200        
1201          
1202          <div x-data="{ expanded: false }">
1203            
1204            <button
1205              @click="expanded = !expanded"
1206              :aria-expanded="expanded"
1207              class="nav-drawer__tier-1__item px-lg-sm flex items-center w-full relative"
1208              :class="expanded ? ' group child-active c-text-content-base' : 'c-text-content-base' "
1209              
1210            >
1211              <div class="text_navigation_lg w-full min-h-min-click-s
1211pace flex items-center grow py-0.35em pr-sm-lg justify-start text-left active:underline aria-expanded:underline has-[aria-current]:underline aria-[current]:underline decoration-[var(--border-default-width)] underline-offset-[4px] group-[.is-current-page]:underline has-[.is-current-page]:underline group-[.child-active]:underline">Music</div>
1212              
1213
1214
1215<div class="w-1em h-1em absolute right-0 mr-lg-sm">
1216  <span class="transition-transform inline-block" :class="{ '-rotate-180': expanded }">
1217
1218
1219
1220  
1221  
1222  
1223  
1224      
1225          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="icon icon--arrow w-full h-full icon--arrow--chevron" fill="currentColor">
1226            <path d="M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z"/>
1227          </svg>
1228        
1229    
1230</span>
1231</div>
1232            </button>
1233            <div class="nav-drawer__submenu overflow-hidden pb-sm-xs px-lg-sm" x-show="expanded" x-collapse>
1234              
1235              
1236                
1237                
1238                  
1239                
1240                  
1241                
1242                  
1243                
1244                  
1245                
1246                  
1247                
1248              
1249
1250              
1251
1252              
1253                              
1254                  
1255                    
1256
1257
1258
1259<a class="nav-drawer__child-link nav-drawer__child-link--view-all text_navigation_sm w-full min-h-min-click-space flex items-center gap-sm-xs py-0.8em justify-start text-left font_bolder" href="/collections/music">
1260  <span>View All Music</span>
1261  <div class="w-1em h-1em -rotate-90 shrink-0" aria-hidden>
1262    
1263
1264
1265
1266  
1267  
1268  
1269  
1270      
1271          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="icon icon--arrow w-full h-full icon--arrow--chevron" fill="currentColor">
1272            <path d="M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z"/>
1273          </svg>
1274        
1275    
1276
1277  </div>
1278</a>
1279                  
1280
1281                  
1282
1283
1284
1285
1286  
1287  <li class="flex items-center w-full relative">
1288    <a class="nav-drawer__child-link text_navigation_sm w-full min-h-min-click-space flex items-center py-0.8em justify-start text-left active:underline aria-expanded:underline has-[aria-current]:underline aria-[current]:underline decoration-[var(--border-default-width)] underline-offset-[4px]"  href="/collections/vinyl" @click="open = false">
1289      VINYL
1290    </a>
1291  </li>
1292
1293
1294
1295                  
1296                              
1297                  
1298
1299                  
1300
1301
1302
1303
1304  
1305  <li class="flex items-center w-full relative">
1306    <a class="nav-drawer__child-link text_navigation_sm w-full min-h-min-click-space flex items-center py-0.8em justify-start text-left active:underline aria-expanded:underline has-[aria-current]:underline aria-[current]:underline decoration-[var(--border-default-width)] underline-offset-[4px]"  href="/collections/cd" @click="open = false">
1307      CDs
1308    </a>
1309  </li>
1310
1311
1312
1313                  
1314                              
1315                  
1316
1317                  
1318
1319
1320
1321
1322  
1323  <li class="flex items-center w-full relative">
1324    <a class="nav-drawer__child-link text_navigation_sm w-full min-h-min-click-space flex items-center py-0.8em justify-start text-left active:underline aria-expanded:underline has-[aria-current]:underline aria-[current]:underline decoration-[var(--border-default-width)] underline-offset-[4px]"  href="/collections/cassettes" @click="open = false">
1325      Cassettes
1326    </a>
1327  </li>
1328
1329
1330
1331                  
1332                              
1333                  
1334
1335                  
1336
1337
1338
1339
1340  
1341  <li class="flex items-center w-full relative">
1342    <a class="nav-drawer__child-link text_navigation_sm w-full min-h-min-click-space flex items-center py-0.8em justify-start text-left active:underline aria-expanded:underline has-[aria-current]:underline aria-[current]:underline decoration-[var(--border-default-width)] underline-offset-[4px]"  href="/collections/retail-variants" @click="open = false">
1343      Retail Variants
1344    </a>
1345  </li>
1346
1347
1348
1349                  
1350                              
1351                  
1352
1353                  
1354
1355
1356
1357
1358  
1359  <li class="flex items-center w-full relative">
1360    <a class="nav-drawer__child-link text_navigation_sm w-full min-h-min-click-s
1360pace flex items-center py-0.8em justify-start text-left active:underline aria-expanded:underline has-[aria-current]:underline aria-[current]:underline decoration-[var(--border-default-width)] underline-offset-[4px]"  href="/collections/music" @click="open = false">
1361      All Music 
1362    </a>
1363  </li>
1364
1365
1366
1367                  
1368                
1369               
1370
1371              
1372              
1373            </div>
1374          </div>
1375        
1376        
1377
1378<div class="nav-drawer__divider c-border-content-subtle border-b-none"></div>
1379      
1380
1381        
1382
1383        
1384
1385        
1386
1387        
1388
1389        
1390          
1391          <li class="nav-drawer__tier-1__item px-lg-sm flex items-center w-full relative c-text-content-base">
1392            <a class="text_navigation_lg w-full min-h-min-click-space flex items-center grow py-0.35em pr-sm-lg justify-start text-left active:underline aria-expanded:underline has-[aria-current]:underline aria-[current]:underline decoration-[var(--border-default-width)] underline-offset-[4px] group-[.is-current-page]:underline has-[.is-current-page]:underline group-[.child-active]:underline"  href="/collections/merch">Merch</a>
1393          </li>
1394        
1395        
1396
1397<div class="nav-drawer__divider c-border-content-subtle border-b-none"></div>
1398      
1399
1400        
1401
1402        
1403
1404        
1405
1406        
1407
1408        
1409          
1410          <div x-data="{ expanded: false }">
1411            
1412            <button
1413              @click="expanded = !expanded"
1414              :aria-expanded="expanded"
1415              class="nav-drawer__tier-1__item px-lg-sm flex items-center w-full relative"
1416              :class="expanded ? ' group child-active c-text-content-base' : 'c-text-content-base' "
1417              
1418            >
1419              <div class="text_navigation_lg w-full min-h-min-click-space flex items-center grow py-0.35em pr-sm-lg justify-start text-left active:underline aria-expanded:underline has-[aria-current]:underline aria-[current]:underline decoration-[var(--border-default-width)] underline-offset-[4px] group-[.is-current-page]:underline has-[.is-current-page]:underline group-[.child-active]:underline">Shop By Album </div>
1420              
1421
1422
1423<div class="w-1em h-1em absolute right-0 mr-lg-sm">
1424  <span class="transition-transform inline-block" :class="{ '-rotate-180': expanded }">
1425
1426
1427
1428  
1429  
1430  
1431  
1432      
1433          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="icon icon--arrow w-full h-full icon--arrow--chevron" fill="currentColor">
1434            <path d="M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z"/>
1435          </svg>
1436        
1437    
1438</span>
1439</div>
1440            </button>
1441            <div class="nav-drawer__submenu overflow-hidden pb-sm-xs px-lg-sm" x-show="expanded" x-collapse>
1442              
1443              
1444                
1445                
1446                  
1447                
1448                  
1449                
1450                  
1451                
1452                  
1453                
1454                  
1455                
1456              
1457
1458              
1459
1460              
1461                              
1462                  
1463                    
1464
1465
1466
1467<a class="nav-drawer__child-link nav-drawer__child-link--view-all text_navigation_sm w-full min-h-min-click-space flex items-center gap-sm-xs py-0.8em justify-start text-left font_bolder" href="/collections/all">
1468  <span>View All Shop By Album </span>
1469  <div class="w-1em h-1em -rotate-90 shrink-0" aria-hidden>
1470    
1471
1472
1473
1474  
1475  
1476  
1477  
1478      
1479          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="icon icon--arrow w-full h-full icon--arrow--chevron" fill="currentColor">
1480            <path d="M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z"/>
1481          </svg>
1482        
1483    
1484
1485  </div>
1486</a>
1487                  
1488
1489                  
1490
1491
1492
1493
1494  
1495  <li class="flex items-center w-full relative">
1496    <a class="nav-drawer__child-link text_navigation_sm w-full min-h-min-click-space flex items-center py-0.8em justify-start text-left active:underline aria-expanded:underline has-[aria-current]:underline aria-[current]:underline decoration-[var(--border-default-width)] underline-offset-[4px]"  href="/collections/dinner-party" @click="open = false">
1497      Dinner Party 
1498    </a>
1499  </li>
1500
1501
1502
1503                  
1504                              
1505                  
1506
1507                  
1508
1509
1510
1511
1512  
1513  <li class="flex items-center w-full relative">
1514    <a class="nav-drawer__child-link text_navigation_sm w-full min-h-min-click-s
1514pace flex items-center py-0.8em justify-start text-left active:underline aria-expanded:underline has-[aria-current]:underline aria-[current]:underline decoration-[var(--border-default-width)] underline-offset-[4px]"  href="/collections/flicker" @click="open = false">
1515      Flicker 
1516    </a>
1517  </li>
1518
1519
1520
1521                  
1522                              
1523                  
1524
1525                  
1526
1527
1528
1529
1530  
1531  <li class="flex items-center w-full relative">
1532    <a class="nav-drawer__child-link text_navigation_sm w-full min-h-min-click-space flex items-center py-0.8em justify-start text-left active:underline aria-expanded:underline has-[aria-current]:underline aria-[current]:underline decoration-[var(--border-default-width)] underline-offset-[4px]"  href="/collections/heartbreak-weather" @click="open = false">
1533      Heartbreak Weather 
1534    </a>
1535  </li>
1536
1537
1538
1539                  
1540                              
1541                  
1542
1543                  
1544
1545
1546
1547
1548  
1549  <li class="flex items-center w-full relative">
1550    <a class="nav-drawer__child-link text_navigation_sm w-full min-h-min-click-space flex items-center py-0.8em justify-start text-left active:underline aria-expanded:underline has-[aria-current]:underline aria-[current]:underline decoration-[var(--border-default-width)] underline-offset-[4px]"  href="/collections/the-show" @click="open = false">
1551      The Show 
1552    </a>
1553  </li>
1554
1555
1556
1557                  
1558                              
1559                  
1560
1561                  
1562
1563
1564
1565
1566  
1567  <li class="flex items-center w-full relative">
1568    <a class="nav-drawer__child-link text_navigation_sm w-full min-h-min-click-space flex items-center py-0.8em justify-start text-left active:underline aria-expanded:underline has-[aria-current]:underline aria-[current]:underline decoration-[var(--border-default-width)] underline-offset-[4px]"  href="/collections/the-show-live" @click="open = false">
1569      The Show: Live 
1570    </a>
1571  </li>
1572
1573
1574
1575                  
1576                
1577               
1578
1579              
1580              
1581            </div>
1582          </div>
1583        
1584        
1585
1586<div class="nav-drawer__divider c-border-content-subtle border-b-none"></div>
1587      
1588
1589        
1590
1591        
1592
1593        
1594
1595        
1596
1597        
1598          
1599          <li class="nav-drawer__tier-1__item px-lg-sm flex items-center w-full relative c-text-content-base">
1600            <a class="text_navigation_lg w-full min-h-min-click-space flex items-center grow py-0.35em pr-sm-lg justify-start text-left active:underline aria-expanded:underline has-[aria-current]:underline aria-[current]:underline decoration-[var(--border-default-width)] underline-offset-[4px] group-[.is-current-page]:underline has-[.is-current-page]:underline group-[.child-active]:underline"  href="/pages/tour">Tour</a>
1601          </li>
1602        
1603        
1604
1605<div class="nav-drawer__divider c-border-content-subtle border-b-none"></div>
1606      
1607
1608        
1609
1610        
1611
1612        
1613
1614        
1615
1616        
1617          
1618          <li class="nav-drawer__tier-1__item px-lg-sm flex items-center w-full relative c-text-content-base">
1619            <a class="text_navigation_lg w-full min-h-min-click-space flex items-center grow py-0.35em pr-sm-lg justify-start text-left active:underline aria-expanded:underline has-[aria-current]:underline aria-[current]:underline decoration-[var(--border-default-width)] underline-offset-[4px] group-[.is-current-page]:underline has-[.is-current-page]:underline group-[.child-active]:underline"  href="/pages/newsletter">Sign Up </a>
1620          </li>
1621        
1622        
1623
1624<div class="nav-drawer__divider c-border-content-subtle border-b-none"></div>
1625      
1626    </ul>
1627
1628    
1629      
1630      
1631        
1632        
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648<ul class="my-sm-sm">
1649  
1650    
1651    <li class="" >
1652      
1653      
1654      
1655      <a href="https://shopify.com/23650831/account/orders?locale=en&buyer_flags=eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJuaWFsbC1ob3Jhbi5teXNob3BpZnkuY29tIiwiZmxhZ3MiOltdLCJleHAiOjE3OTE1MzE4MzUsIm5iZiI6MTc5MDkyNzAzNX0.CR3d0GERV6PgvuxV4aeb1RYdE4o-ufKTCj38_77jxYg&region_country=US" class="text_navigation_sm w-full min-h-min-click-space flex items-center grow py-0.35em pr-sm-lg justify-start text-left active:underline aria-expanded:underline has-[aria-current]:underline aria-[current]:underline decoration-[var(--border-default-width)] underline-offset-[4px] group-[.is-current-page]:underline has-[.is-current-page]:underline group-[.child-active]:un
1655derline px-lg-sm c-text-content-base">
1656        Login
1657      </a>
1658    </li>
1659
1660    
1661  
1662</ul>
1663
1664      
1665    
1666  </div>
1667</div>
1668        
1669        
1670    
1671      
1672          
1673
1674<div class="header__column header__column--1 header__column--logo flex col-span-3 justify-center items-center" >
1675  <div x-ref="logoContainer" class="logo-container" >
1676    
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692  
1693
1694  
1695  
1696
1697  
1698  
1699  
1700
1701  
1702  
1703
1704  
1705  
1706
1707  
1708
1709  
1710
1711  <a class="logo-cntr block" href="/" style=" --logo-width: 9.375rem; " aria-label="Niall Horan Official Store Home">
1712    
1713      
1714
1715            
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728  <picture class="image__adaptive">
1729    
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745    
1746  
1747<source data-src="//niallhoran.com/cdn/shop/files/rty84-nbk90-aqwyh.png?v=1772637081&amp;width=625" alt="Store Logo" srcset="//niallhoran.com/cdn/shop/files/rty84-nbk90-aqwyh.png?v=1772637081&amp;width=100 100w, //niallhoran.com/cdn/shop/files/rty84-nbk90-aqwyh.png?v=1772637081&amp;width=300 300w, //niallhoran.com/cdn/shop/files/rty84-nbk90-aqwyh.png?v=1772637081&amp;width=400 400w, //niallhoran.com/cdn/shop/files/rty84-nbk90-aqwyh.png?v=1772637081&amp;width=500 500w, //niallhoran.com/cdn/shop/files/rty84-nbk90-aqwyh.png?v=1772637081&amp;width=600 600w" width="625" height="142" loading="eager" sizes="(min-width: 768px) 150px, 150px" media="(min-width: 760px)">
1748
1749
1750
1751
1752    
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768  
1769<img aria-hidden="true" src="//niallhoran.com/cdn/shop/files/rty84-nbk90-aqwyh.png?v=1772637081&amp;width=509" alt="Store Logo" srcset="//niallhoran.com/cdn/shop/files/rty84-nbk90-aqwyh.png?v=1772637081&amp;width=100 100w, //niallhoran.com/cdn/shop/files/rty84-nbk90-aqwyh.png?v=1772637081&amp;width=300 300w, //niallhoran.com/cdn/shop/files/rty84-nbk90-aqwyh.png?v=1772637081&amp;width=400 400w, //niallhoran.com/cdn/shop/files/rty84-nbk90-aqwyh.png?v=1772637081&amp;width=500 500w" width="509" height="116" loading="eager" sizes="(min-width: 768px) 150px, 150px" class="w-full object-cover image__responsive">
1770
1771
1772
1773
1774  </picture>
1775
1776
1777
1778    
1779  </a>
1780  </div>
1781</div>
1782        
1783    
1784      
1785          
1786
1787<div class="header__column header__column--2 header__column--actions flex col-span-3 justify-end items-center"  >
1788  <div class="actions-container flex flex-row flex-wrap gap-y-sm-sm gap-sm-xxs">
1789    
1790
1791
1792    
1793    
1794    
1795    
1796    
1797    <div class="flex fill-current items-center justify-center min-w-min-click-space min-h-min-click-space">
1798      <button class="btn-search text_navigation_md no-underline" 
1799      x-on:click="searchBarOpen = true;$nextTick(() => { $store.headerGroupManager.updateMeasurements(); setTimeout(() => $refs.searchInput.focus(), 10) })" type="button" aria-label="Open Search Bar" x-ref="searchToggle" :aria-expanded="searchBarOpen" aria-controls="header-search-dropdown"
1800     >
1801        
1802
1803
1804
1805  
1806  
1807  
1808      <svg xmlns="http://www.w3.org/2000/svg" viewBox="-64 0 576 512" class="icon icon--search umg-icon" fill="currentColor">
1809        <path d="M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352c79.5 0 144-64.5 144-144s-64.5-144-144-144S64 128.5 64 208s64.5 144 144 144z"/>
1810      </svg>
1811    
1812
1813      </button>
1814    </div>
1815
1816  
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844   
1845  <cart-drawer-toggle-button class="header__action header__action--cart-trigger cart-toggle cursor-pointer text-center relative text_navigation_md no-underline" tabindex="-1">
1846    
1847  <a href="/cart" class="flex items-center flex h-full fill-current items-center justify-center min-w-min-click-space min-h-min-click-space">
1848    
1849      <div class="cart-toggle__innerwrapper cart-toggle__innerwrapper--icon items-center">
1850        
1851
1852
1853
1854  
1855  
1856  
1857      
1858          
1859          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" class="icon icon--cart umg-icon" fill="currentColor">
1860            <path d="M24 0C10.7 0 0 10.7 0 24S10.7 48 24 48H76.1l60.3 316.5c2.2 11.3 12.1 19.5 23.6 19.5H488c13.3 0 24-10.7 24-24s-10.7-24-24-24H179.9l-9.1-48h317c14.3 0 26.9-9.5 30.8-23.3l54-192C578.3 52.3 563 32 541.8 32H122l-2.4-12.5C117.4 8.2 107.5 0 96 0H24zM176 512c26.5 0 48-21.5 48-48s-21.5-48-48-48s-48 21.5-48 48s21.5 48 48 48zm336-48c0-26.5-21.5-48-48-48s-48 21.5-48 48s21.5 48 48 48s48-21.5 48-48z"/>
1861          </svg>
1862      
1863    
1864
1865      </div>
1866      <span class="sr-only">TODO</span>
1867    
1868    <div id="header-cart-count" class="cart-count grid place-items-center min-w-[22px] text_body_xs min-h-[22px] absolute place-content-center rounded-full -top-[0.3rem] -right-1 c-bg-tertiary c-text-tertiary-on empty:hidden"></div>
1869    
1870  </a>
1871
1872  </cart-drawer-toggle-button>
1873
1874    
1875
1876  </div>
1877</div>
1878          
1879        
1880    
1881  </div>
1882  
1883  
1884    
1885
1886
1887
1888
1889  
1890  
1891
1892  
1893  
1894  
1895
1896  
1897  
1898
1899  
1900  
1901
1902  
1903
1904  
1905
1906  <div class="header__search-wrapper section__wrapper w-full hidden border-x-0 border-t-0 z-10 border-none c-border-default-color c-bg-gray-100 c-text-gray-700" 
1907    x-show="searchBarOpen" @click.away="searchBarOpen = false; $nextTick(() => { $store.headerGroupManager.updateMeasurements() })" :class="{ '' : searchBarOpen , 'hidden' : !searchBarOpen }"
1908    @keydown.escape="searchBarOpen = false; $nextTick(() => { $store.headerGroupManager.updateMeasurements(); setTimeout(() => $refs.searchToggle.focus({ focusVisible: true }), 10) })"
1909    id="header-search-dropdown"
1910  >
1911    <div class="header__search-container flex md:max-w-[70ch] lg:max-w-[90ch] mx-auto justify-center section-spacing mx-auto w-full relative z-10 py-container-sm px-lg-sm max-w-full md:px-container-sm md:max-w-full">
1912      
1913      
1914
1915
1916
1917
1918    <form class="predictive-search__form flex-col items-center w-full" action="/search" method="get" role="search" aria-label="Sitewide">
1919      <div class="predictive-search__input-wrapper relative w-full">
1920        <input class="predictive-search__input appearance-none w-full text_body_md c-text-content-base c-bg-background shadow-sm rounded-none border-default-width c-border-gray-900 py-sm-xs px-sm-xs header__search-input" id="search-sections--28662239560050__header" type="search" value="" name="q" placeholder="Search"aria-label="Search" autocorrect="off" autocomplete="off" autocapitalize="off" spellcheck="false" x-ref="searchInput" >
1921        <button class="predictive-search__input-icon box-content h-full border-default-size flex absolute z-10 top-1/2 right-0 items-center justify-center transform -translate-y-1/2 border-r-default-width border-transparent c-text-gray-900 w-4 px-sm-xs" type="submit" aria-label="Search">
1922          
1923
1924
1925
1926  
1927  
1928  
1929      <svg xmlns="http://www.w3.org/2000/svg" viewBox="-64 0 576 512" class="icon icon--search umg-icon" fill="currentColor">
1930        <path d="M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352c79.5 0 144-64.5 144-144s-64.5-144-144-144S64 128.5 64 208s64.5 144 144 144z"/>
1931      </svg>
1932    
1933
1934        </button>
1935        
1936      </div>
1937    </form>
1938
1939    </div>
1940  </div>
1941
1942  
1943
1944  
1945
1946  
1947
1948
1949
1950  
1951  
1952
1953  
1954  
1955
1956  
1957    <div class="section__bg absolute col-start-1 row-start-1 col-span-1 row-span-1 z-0 h-full w-full select-none" aria-hidden="true">
1958      
1959      
1960
1961      
1962        
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978  
1979<img src="//niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=2400" srcset="//niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=100 100w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=300 300w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=400 400w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=500 500w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=600 600w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=800 800w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=1200 1200w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=1600 1600w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=2000 2000w" width="2400" height="1600" loading="eager" sizes="100vw" class="w-full h-full object-cover image__responsive">
1980
1981
1982
1983
1984      
1985    </div>
1986  
1987
1988
1989
1990</div>
1991
1992</header><header id="shopify-section-sections--28662239560050__header-md" class="shopify-section shopify-section-group-header-group site-header site-header--md hidden md:grid">
1993<style data-shopify>
1994    body {
1995      --header-group-header-position-md: sticky;
1996    }
1997  </style>
1998<style>
1999	#shopify-section-sections--28662239560050__header-md {
2000		position: sticky;top: 0;z-index: 999997;
2001    width: 100%;
2002	}
2003	</style>
2004  
2004<script>document.getElementById('shopify-section-sections--28662239560050__header-md').classList.add('umg-sticky', 'transition-[transform]')</script>
2004
2005
2006
2007
2008
2009
2010
2011<div id="header-md-wrapper--28662239560050" class="header__wrapper header__wrapper--md scheme-scheme1 z-[10] mx-auto h-auto w-full section__wrapper scheme-scheme1 grid columns-1 rows-1 place-items-center relative z-0 overflow-visible c-bg-surface c-text-on-surface mb-none border-none c-border-default-color border-x-0 border-t-0" x-data="{ hamburgerMenuOpen: false, searchBarOpen: false, dropDownMenuOpen: null }" data-position="dynamic_sticky_header" style=" --icon-width: 1.375rem; --icon-height: 1.375rem; ">
2012  <div id="header-md-container--28662239560050" class="header__container header__container--md grid gap-y-sm-2xs gap-x-sm-xs grid-cols-8 section-spacing mx-auto w-full relative z-10 py-container-xs px-lg-xs max-w-full md:px-container-xs md:max-w-full mx-auto text-center" >
2013    
2014      
2015          
2016
2017<div class="header__column header__column--0 header__column--logo flex col-span-1 justify-start items-center" >
2018  <div x-ref="logoContainer" class="logo-container" >
2019    
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035  
2036
2037  
2038  
2039
2040  
2041  
2042  
2043
2044  
2045  
2046
2047  
2048  
2049
2050  
2051
2052  
2053
2054  <a class="logo-cntr block" href="/" style=" --logo-width: 9.375rem; " aria-label="Niall Horan Official Store Home">
2055    
2056      
2057
2058            
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071  <picture class="image__adaptive">
2072    
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088    
2089  
2090<source data-src="//niallhoran.com/cdn/shop/files/rty84-nbk90-aqwyh.png?v=1772637081&amp;width=625" alt="Store Logo" srcset="//niallhoran.com/cdn/shop/files/rty84-nbk90-aqwyh.png?v=1772637081&amp;width=100 100w, //niallhoran.com/cdn/shop/files/rty84-nbk90-aqwyh.png?v=1772637081&amp;width=300 300w, //niallhoran.com/cdn/shop/files/rty84-nbk90-aqwyh.png?v=1772637081&amp;width=400 400w, //niallhoran.com/cdn/shop/files/rty84-nbk90-aqwyh.png?v=1772637081&amp;width=500 500w, //niallhoran.com/cdn/shop/files/rty84-nbk90-aqwyh.png?v=1772637081&amp;width=600 600w" width="625" height="142" loading="eager" sizes="(min-width: 768px) 150px, 150px" media="(min-width: 760px)">
2091
2092
2093
2094
2095    
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111  
2112<img aria-hidden="true" src="//niallhoran.com/cdn/shop/files/rty84-nbk90-aqwyh.png?v=1772637081&amp;width=509" alt="Store Logo" srcset="//niallhoran.com/cdn/shop/files/rty84-nbk90-aqwyh.png?v=1772637081&amp;width=100 100w, //niallhoran.com/cdn/shop/files/rty84-nbk90-aqwyh.png?v=1772637081&amp;width=300 300w, //niallhoran.com/cdn/shop/files/rty84-nbk90-aqwyh.png?v=1772637081&amp;width=400 400w, //niallhoran.com/cdn/shop/files/rty84-nbk90-aqwyh.png?v=1772637081&amp;width=500 500w" width="509" height="116" loading="eager" sizes="(min-width: 768px) 150px, 150px" class="w-full object-cover image__responsive">
2113
2114
2115
2116
2117  </picture>
2118
2119
2120
2121    
2122  </a>
2123  </div>
2124</div>
2125        
2126    
2127      
2128          
2129
2130<div class="mega-menu flex items-center col-span-5" >
2131  
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152<div class="mega-menu w-full overscroll-contain"
2153  x-data="{
2154    activeMenu: null,
2155    isOpen: false,
2156    close() {
2157      this.isOpen = false;
2158      this.activeMenu = null;
2159    },
2160    handleKeydown(e) {
2161      if (e.key === 'Escape') {
2162        this.close()
2163      }
2164    }
2165  }"
2166  @keydown="handleKeydown($event)">
2167  <nav class="mega-menu__nav" aria-label="Header main menu">
2168    <ul class="mega-menu__primary-list flex items-center w-full flex-wrap gap-x-lg-sm text-left justify-start" role="menubar">
2169      
2170        
2171
2172        
2173        
2174        
2175
2176        
2177        
2178
2179        <li class="mega-menu__primary-item grow-0 "
2180          x-data="{ id: 'music' }"
2181          role="none"
2182          
2183            @click="if(activeMenu == id) { close(); } else { close(); $nextTick(() => { activeMenu = id; isOpen = true; }); }"
2184          
2185        >
2186          <button
2187            
2188            
2189            :id="'button-' + id"
2190            class="mega-menu__primary-link text_navigation_lg flex justify-center items-center gap-sm-xs py-lg-2xs hover:c-text-secondary mega-menu__primary-link--has-submenu no-underline hover:no-underline active:no-underline group-[.is-current-page]:no-underline aria-expanded:no-underline has-[.is-current-page]:no-underline has-[aria-current]:no-underline aria-[current]:no-underline group-[.child-active]:no-underline"
2191            
2192              :class="activeMenu === id ? 'mega-menu__primary-link--active c-text-secondary' : ''"
2193              :aria-expanded="activeMenu === id ? 'true' : 'false'"
2194              aria-haspopup="true"
2195              :aria-controls="'dropdown-' + id"
2196              @keydown.arrow-down.prevent="$refs.submenu?.querySelector('[role=menuitem]')?.focus()"
2197              @keydown.arrow-up.prevent="$refs.submenu?.querySelector('[role=menuitem]:last-child')?.focus()"
2198            
2199            role="menuitem"
2200          >
2201            Music
2202            
2203              <span class="mega-menu__primary-link-icon w-1em h-1em" :class="activeMenu === id ? 'rotate-180' : ''" aria-hidden="true">
2204                
2205
2206
2207
2208  
2209  
2210  
2211  
2212      
2213          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="icon icon--arrow w-full h-full icon--arrow--chevron" fill="currentColor">
2214            <path d="M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z"/>
2215          </svg>
2216        
2217    
2218
2219              </span>
2220            
2221          </button>
2222
2223          
2224            
2225            
2226              
2227              
2228                
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254<div
2255  class="mega-menu__dropdown absolute shadow-lg min-w-[240px] max-w-[300px] z-100 max-h-[calc(100vh-var(--header-group-height)-44px)] overflow-y-auto text-left c-bg-surface c-text-on-surface -mx-lg-xs"
2256  x-cloak
2257  x-show="activeMenu === id"
2258  x-trap.noscroll="activeMenu === id"
2259  :id="'dropdown-' + id"
2260  :aria-labelledby="'button-' + id"
2261  x-transition:enter="transition ease-out duration-200"
2262  x-transition:enter-start="opacity-0 -translate-y-1"
2263  x-transition:enter-end="opacity-100 translate-y-0"
2264  x-transition:leave="transition ease-in duration-150"
2265  x-transition:leave-start="opacity-100 translate-y-0"
2266  x-transition:leave-end="opacity-0 -translate-y-1"
2267  @keydown.escape.prevent.stop="close()"
2268  @click.away="close()"
2269>
2270  <div class="mega-menu__dropdown-container mx-auto w-full p-lg-xs">
2271    <ul
2272      class="dropdown__stack flex flex-col items-start gap-sm-sm"
2273      role="menu"
2274    >
2275      
2276        
2277        
2278
2279        
2280        
2281
2282        
2283        
2284
2285        
2286        
2287
2288        
2289        
2290
2291        
2292        <li class="dropdown__child-item flex flex-col justify-center items-start gap-sm-sm" role="none">
2293          <a
2294            href="/collections/vinyl"
2295            class="dropdown__child-link text_navigation_sm hover:c-text-secondary no-underline hover:no-underline active:no-underline group-[.is-current-page]:no-underline aria-expanded:no-underline has-[.is-current-page]:no-underline has-[aria-current]:no-underline aria-[current]:no-underline"
2296            role="menuitem"
2297            
2298            :tabindex="activeMenu === id ? '0' : '-1'"
2299            @keydown.enter.prevent="window.location.href='/collections/vinyl'"
2300            @keydown.space.prevent="window.location.href='/collections/vinyl'"
2301          >
2302            VINYL
2303          </a>
2304          
2305        </li>
2306      
2307        
2308        
2309
2310        
2311        
2312
2313        
2314        
2315
2316        
2317        
2318
2319        
2320        
2321
2322        
2323        <li class="dropdown__child-item flex flex-col justify-center items-start gap-sm-sm" role="none">
2324          <a
2325            href="/collections/cd"
2326            class="dropdown__child-link text_navigation_sm hover:c-text-secondary no-underline hover:no-underline active:no-underline group-[.is-current-page]:no-underline aria-expanded:no-underline has-[.is-current-page]:no-underline has-[aria-current]:no-underline aria-[current]:no-underline"
2327            role="menuitem"
2328            
2329            :tabindex="activeMenu === id ? '0' : '-1'"
2330            @keydown.enter.prevent="window.location.href='/collections/cd'"
2331            @keydown.space.prevent="window.location.href='/collections/cd'"
2332          >
2333            CDs
2334          </a>
2335          
2336        </li>
2337      
2338        
2339        
2340
2341        
2342        
2343
2344        
2345        
2346
2347        
2348        
2349
2350        
2351        
2352
2353        
2354        <li class="dropdown__child-item flex flex-col justify-center items-start gap-sm-sm" role="none">
2355          <a
2356            href="/collections/cassettes"
2357            class="dropdown__child-link text_navigation_sm hover:c-text-secondary no-underline hover:no-underline active:no-underline group-[.is-current-page]:no-underline aria-expanded:no-underline has-[.is-current-page]:no-underline has-[aria-current]:no-underline aria-[current]:no-underline"
2358            role="menuitem"
2359            
2360            :tabindex="activeMenu === id ? '0' : '-1'"
2361            @keydown.enter.prevent="window.location.href='/collections/cassettes'"
2362            @keydown.space.prevent="window.location.href='/collections/cassettes'"
2363          >
2364            Cassettes
2365          </a>
2366          
2367        </li>
2368      
2369        
2370        
2371
2372        
2373        
2374
2375        
2376        
2377
2378        
2379        
2380
2381        
2382        
2383
2384        
2385        <li class="dropdown__child-item flex flex-col justify-center items-start gap-sm-sm" role="none">
2386          <a
2387            href="/collections/retail-variants"
2388            class="dropdown__child-link text_navigation_sm hover:c-text-secondary no-u
2388nderline hover:no-underline active:no-underline group-[.is-current-page]:no-underline aria-expanded:no-underline has-[.is-current-page]:no-underline has-[aria-current]:no-underline aria-[current]:no-underline"
2389            role="menuitem"
2390            
2391            :tabindex="activeMenu === id ? '0' : '-1'"
2392            @keydown.enter.prevent="window.location.href='/collections/retail-variants'"
2393            @keydown.space.prevent="window.location.href='/collections/retail-variants'"
2394          >
2395            Retail Variants
2396          </a>
2397          
2398        </li>
2399      
2400        
2401        
2402
2403        
2404        
2405
2406        
2407        
2408
2409        
2410        
2411
2412        
2413        
2414
2415        
2416        <li class="dropdown__child-item flex flex-col justify-center items-start gap-sm-sm" role="none">
2417          <a
2418            href="/collections/music"
2419            class="dropdown__child-link text_navigation_sm hover:c-text-secondary no-underline hover:no-underline active:no-underline group-[.is-current-page]:no-underline aria-expanded:no-underline has-[.is-current-page]:no-underline has-[aria-current]:no-underline aria-[current]:no-underline"
2420            role="menuitem"
2421            
2422            :tabindex="activeMenu === id ? '0' : '-1'"
2423            @keydown.enter.prevent="window.location.href='/collections/music'"
2424            @keydown.space.prevent="window.location.href='/collections/music'"
2425          >
2426            All Music 
2427          </a>
2428          
2429        </li>
2430      
2431    </ul>
2432  </div>
2433</div>
2434              
2435            
2436
2437            
2438          
2439        </li>
2440      
2441        
2442
2443        
2444        
2445        
2446
2447        
2448        
2449
2450        <li class="mega-menu__primary-item grow-0 "
2451          x-data="{ id: 'merch' }"
2452          role="none"
2453          
2454        >
2455          <a
2456            
2457              href="/collections/merch"
2458            
2459            
2460            :id="'button-' + id"
2461            class="mega-menu__primary-link text_navigation_lg flex justify-center items-center gap-sm-xs py-lg-2xs hover:c-text-secondary no-underline hover:no-underline active:no-underline group-[.is-current-page]:no-underline aria-expanded:no-underline has-[.is-current-page]:no-underline has-[aria-current]:no-underline aria-[current]:no-underline"
2462            
2463            role="menuitem"
2464          >
2465            Merch
2466            
2467          </a>
2468
2469          
2470        </li>
2471      
2472        
2473
2474        
2475        
2476        
2477
2478        
2479        
2480
2481        <li class="mega-menu__primary-item grow-0 "
2482          x-data="{ id: 'shop-by-album' }"
2483          role="none"
2484          
2485            @click="if(activeMenu == id) { close(); } else { close(); $nextTick(() => { activeMenu = id; isOpen = true; }); }"
2486          
2487        >
2488          <button
2489            
2490            
2491            :id="'button-' + id"
2492            class="mega-menu__primary-link text_navigation_lg flex justify-center items-center gap-sm-xs py-lg-2xs hover:c-text-secondary mega-menu__primary-link--has-submenu no-underline hover:no-underline active:no-underline group-[.is-current-page]:no-underline aria-expanded:no-underline has-[.is-current-page]:no-underline has-[aria-current]:no-underline aria-[current]:no-underline group-[.child-active]:no-underline"
2493            
2494              :class="activeMenu === id ? 'mega-menu__primary-link--active c-text-secondary' : ''"
2495              :aria-expanded="activeMenu === id ? 'true' : 'false'"
2496              aria-haspopup="true"
2497              :aria-controls="'dropdown-' + id"
2498              @keydown.arrow-down.prevent="$refs.submenu?.querySelector('[role=menuitem]')?.focus()"
2499              @keydown.arrow-up.prevent="$refs.submenu?.querySelector('[role=menuitem]:last-child')?.focus()"
2500            
2501            role="menuitem"
2502          >
2503            Shop By Album 
2504            
2505              <span class="mega-menu__primary-link-icon w-1em h-1em" :class="activeMenu === id ? 'rotate-180' : ''" aria-hidden="true">
2506                
2507
2508
2509
2510  
2511  
2512  
2513  
2514      
2515          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="icon icon--arrow w-full h-full icon--arrow--chevron" fill="currentColor">
2516            <path d="M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z"/>
2517          </svg>
2518        
2519    
2520
2521              </span>
2522            
2523          </button>
2524
2525          
2526            
2527            
2528              
2529              
2530                
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556<div
2557  class="mega-menu__dropdown absolute shadow-lg min-w-[240px] max-w-[300px] z-100 max-h-[calc(100vh-var(--header-group-height)-44px)] overflow-y-auto text-left c-bg-surface c-text-on-surface -mx-lg-xs"
2558  x-cloak
2559  x-show="activeMenu === id"
2560  x-trap.noscroll="activeMenu === id"
2561  :id="'dropdown-' + id"
2562  :aria-labelledby="'button-' + id"
2563  x-transition:enter="transition ease-out duration-200"
2564  x-transition:enter-start="opacity-0 -translate-y-1"
2565  x-transition:enter-end="opacity-100 translate-y-0"
2566  x-transition:leave="transition ease-in duration-150"
2567  x-transition:leave-start="opacity-100 translate-y-0"
2568  x-transition:leave-end="opacity-0 -translate-y-1"
2569  @keydown.escape.prevent.stop="close()"
2570  @click.away="close()"
2571>
2572  <div class="mega-menu__dropdown-container mx-auto w-full p-lg-xs">
2573    <ul
2574      class="dropdown__stack flex flex-col items-start gap-sm-sm"
2575      role="menu"
2576    >
2577      
2578        
2579        
2580
2581        
2582        
2583
2584        
2585        
2586
2587        
2588        
2589
2590        
2591        
2592
2593        
2594        <li class="dropdown__child-item flex flex-col justify-center items-start gap-sm-sm" role="none">
2595          <a
2596            href="/collections/dinner-party"
2597            class="dropdown__child-link text_navigation_sm hover:c-text-secondary no-u
2597nderline hover:no-underline active:no-underline group-[.is-current-page]:no-underline aria-expanded:no-underline has-[.is-current-page]:no-underline has-[aria-current]:no-underline aria-[current]:no-underline"
2598            role="menuitem"
2599            
2600            :tabindex="activeMenu === id ? '0' : '-1'"
2601            @keydown.enter.prevent="window.location.href='/collections/dinner-party'"
2602            @keydown.space.prevent="window.location.href='/collections/dinner-party'"
2603          >
2604            Dinner Party 
2605          </a>
2606          
2607        </li>
2608      
2609        
2610        
2611
2612        
2613        
2614
2615        
2616        
2617
2618        
2619        
2620
2621        
2622        
2623
2624        
2625        <li class="dropdown__child-item flex flex-col justify-center items-start gap-sm-sm" role="none">
2626          <a
2627            href="/collections/flicker"
2628            class="dropdown__child-link text_navigation_sm hover:c-text-secondary no-underline hover:no-underline active:no-underline group-[.is-current-page]:no-underline aria-expanded:no-underline has-[.is-current-page]:no-underline has-[aria-current]:no-underline aria-[current]:no-underline"
2629            role="menuitem"
2630            
2631            :tabindex="activeMenu === id ? '0' : '-1'"
2632            @keydown.enter.prevent="window.location.href='/collections/flicker'"
2633            @keydown.space.prevent="window.location.href='/collections/flicker'"
2634          >
2635            Flicker 
2636          </a>
2637          
2638        </li>
2639      
2640        
2641        
2642
2643        
2644        
2645
2646        
2647        
2648
2649        
2650        
2651
2652        
2653        
2654
2655        
2656        <li class="dropdown__child-item flex flex-col justify-center items-start gap-sm-sm" role="none">
2657          <a
2658            href="/collections/heartbreak-weather"
2659            class="dropdown__child-link text_navigation_sm hover:c-text-secondary no-underline hover:no-underline active:no-underline group-[.is-current-page]:no-underline aria-expanded:no-underline has-[.is-current-page]:no-underline has-[aria-current]:no-underline aria-[current]:no-underline"
2660            role="menuitem"
2661            
2662            :tabindex="activeMenu === id ? '0' : '-1'"
2663            @keydown.enter.prevent="window.location.href='/collections/heartbreak-weather'"
2664            @keydown.space.prevent="window.location.href='/collections/heartbreak-weather'"
2665          >
2666            Heartbreak Weather 
2667          </a>
2668          
2669        </li>
2670      
2671        
2672        
2673
2674        
2675        
2676
2677        
2678        
2679
2680        
2681        
2682
2683        
2684        
2685
2686        
2687        <li class="dropdown__child-item flex flex-col justify-center items-start gap-sm-sm" role="none">
2688          <a
2689            href="/collections/the-show"
2690            class="dropdown__child-link text_navigation_sm hover:c-text-secondary no-underline hover:no-underline active:no-underline group-[.is-current-page]:no-underline aria-expanded:no-underline has-[.is-current-page]:no-underline has-[aria-current]:no-underline aria-[current]:no-underline"
2691            role="menuitem"
2692            
2693            :tabindex="activeMenu === id ? '0' : '-1'"
2694            @keydown.enter.prevent="window.location.href='/collections/the-show'"
2695            @keydown.space.prevent="window.location.href='/collections/the-show'"
2696          >
2697            The Show 
2698          </a>
2699          
2700        </li>
2701      
2702        
2703        
2704
2705        
2706        
2707
2708        
2709        
2710
2711        
2712        
2713
2714        
2715        
2716
2717        
2718        <li class="dropdown__child-item flex flex-col justify-center items-start gap-sm-sm" role="none">
2719          <a
2720            href="/collections/the-show-live"
2721            class="dropdown__child-link text_navigation_sm hover:c-text-secondary no-underline hover:no-underline active:no-underline group-[.is-current-page]:no-underline aria-expanded:no-underline has-[.is-current-page]:no-underline has-[aria-current]:no-underline aria-[current]:no-underline"
2722            role="menuitem"
2723            
2724            :tabindex="activeMenu === id ? '0' : '-1'"
2725            @keydown.enter.prevent="window.location.href='/collections/the-show-live'"
2726            @keydown.space.prevent="window.location.href='/collections/the-show-live'"
2727          >
2728            The Show: Live 
2729          </a>
2730          
2731        </li>
2732      
2733    </ul>
2734  </div>
2735</div>
2736              
2737            
2738
2739            
2740          
2741        </li>
2742      
2743        
2744
2745        
2746        
2747        
2748
2749        
2750        
2751
2752        <li class="mega-menu__primary-item grow-0 "
2753          x-data="{ id: 'tour' }"
2754          role="none"
2755          
2756        >
2757          <a
2758            
2759              href="/pages/tour"
2760            
2761            
2762            :id="'button-' + id"
2763            class="mega-menu__primary-link text_navigation_lg flex justify-center items-center gap-sm-xs py-lg-2xs hover:c-text-secondary no-u
2763nderline hover:no-underline active:no-underline group-[.is-current-page]:no-underline aria-expanded:no-underline has-[.is-current-page]:no-underline has-[aria-current]:no-underline aria-[current]:no-underline"
2764            
2765            role="menuitem"
2766          >
2767            Tour
2768            
2769          </a>
2770
2771          
2772        </li>
2773      
2774        
2775
2776        
2777        
2778        
2779
2780        
2781        
2782
2783        <li class="mega-menu__primary-item grow-0 "
2784          x-data="{ id: 'sign-up' }"
2785          role="none"
2786          
2787        >
2788          <a
2789            
2790              href="/pages/newsletter"
2791            
2792            
2793            :id="'button-' + id"
2794            class="mega-menu__primary-link text_navigation_lg flex justify-center items-center gap-sm-xs py-lg-2xs hover:c-text-secondary no-underline hover:no-underline active:no-underline group-[.is-current-page]:no-underline aria-expanded:no-underline has-[.is-current-page]:no-underline has-[aria-current]:no-underline aria-[current]:no-underline"
2795            
2796            role="menuitem"
2797          >
2798            Sign Up 
2799            
2800          </a>
2801
2802          
2803        </li>
2804      
2805    </ul>
2806  </nav>
2807
2808  <template x-teleport="#header-md-wrapper--28662239560050">
2809    <button
2810      class="umg-backdrop block w-screen h-screen absolute left-0 right-0 bottom-0 top-full z-1"
2811      x-cloak
2812      x-show="activeMenu"
2813      x-transition.opacity
2814      aria-hidden="true"
2815      tabindex="-1"
2816      @click="close()">
2817      <span class="sr-only">Close navigation menu</span>
2818    </button>
2819  </template>
2820</div>
2821</div>
2822
2823        
2824    
2825      
2826          
2827
2828<div class="header__column header__column--2 header__column--actions flex col-span-2 justify-end items-center"  >
2829  <div class="actions-container flex flex-row flex-wrap gap-y-sm-sm gap-sm-xxs">
2830    
2831
2832
2833    
2834    
2835    
2836    
2837    
2838    <div class="flex fill-current items-center justify-center min-w-min-click-space min-h-min-click-space">
2839      <button class="btn-search text_navigation_lg no-underline hover:underline hover:decoration-2 hover:underline-offset-[4px]" 
2840      x-on:click="searchBarOpen = true;$nextTick(() => { $store.headerGroupManager.updateMeasurements(); setTimeout(() => $refs.searchInput.focus(), 10) })" type="button" aria-label="Open Search Bar" x-ref="searchToggle" :aria-expanded="searchBarOpen" aria-controls="header-search-dropdown"
2841     >
2842        
2843
2844
2845
2846  
2847  
2848  
2849      <svg xmlns="http://www.w3.org/2000/svg" viewBox="-64 0 576 512" class="icon icon--search umg-icon" fill="currentColor">
2850        <path d="M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352c79.5 0 144-64.5 144-144s-64.5-144-144-144S64 128.5 64 208s64.5 144 144 144z"/>
2851      </svg>
2852    
2853
2854      </button>
2855    </div>
2856
2857  
2858
2859
2860
2861
2862
2863<a href="https://shopify.com/23650831/account/orders?locale=en&buyer_flags=eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJuaWFsbC1ob3Jhbi5teXNob3BpZnkuY29tIiwiZmxhZ3MiOltdLCJleHAiOjE3OTE1MzE4MzUsIm5iZiI6MTc5MDkyNzAzNX0.CR3d0GERV6PgvuxV4aeb1RYdE4o-ufKTCj38_77jxYg&region_country=US" class="header__action header__action--account-link text_navigation_lg no-underline hover:underline hover:decoration-2 hover:underline-offset-[4px] flex h-full fill-current items-center justify-center min-w-min-click-space min-h-min-click-space block overflow-hidden">
2864  
2865      <div class="icon-wrapper">
2866        
2867
2868
2869
2870  
2871  
2872  
2873      <svg xmlns="http://www.w3.org/2000/svg" viewBox="-64 0 576 512" class="icon icon--user umg-icon" fill="currentColor">
2874        <path d="M224 256c70.7 0 128-57.3 128-128S294.7 0 224 0S96 57.3 96 128s57.3 128 128 128zm-45.7 48C79.8 304 0 383.8 0 482.3C0 498.7 13.3 512 29.7 512H418.3c16.4 0 29.7-13.3 29.7-29.7C448 383.8 368.2 304 269.7 304H178.3z"/>
2875      </svg>
2876    
2877
2878        <span class="sr-only">Account</span>
2879      </div>
2880    
2881</a>
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908   
2909  <cart-drawer-toggle-button class="header__action header__action--cart-trigger cart-toggle cursor-pointer text-center relative text_navigation_lg no-underline hover:underline hover:decoration-2 hover:underline-offset-[4px]" tabindex="-1">
2910    
2911  <a href="/cart" class="flex items-center flex h-full fill-current items-center justify-center min-w-min-click-s
2911pace min-h-min-click-space">
2912    
2913      <div class="cart-toggle__innerwrapper cart-toggle__innerwrapper--icon items-center">
2914        
2915
2916
2917
2918  
2919  
2920  
2921      
2922          
2923          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" class="icon icon--cart umg-icon" fill="currentColor">
2924            <path d="M24 0C10.7 0 0 10.7 0 24S10.7 48 24 48H76.1l60.3 316.5c2.2 11.3 12.1 19.5 23.6 19.5H488c13.3 0 24-10.7 24-24s-10.7-24-24-24H179.9l-9.1-48h317c14.3 0 26.9-9.5 30.8-23.3l54-192C578.3 52.3 563 32 541.8 32H122l-2.4-12.5C117.4 8.2 107.5 0 96 0H24zM176 512c26.5 0 48-21.5 48-48s-21.5-48-48-48s-48 21.5-48 48s21.5 48 48 48zm336-48c0-26.5-21.5-48-48-48s-48 21.5-48 48s21.5 48 48 48s48-21.5 48-48z"/>
2925          </svg>
2926      
2927    
2928
2929      </div>
2930      <span class="sr-only">TODO</span>
2931    
2932    <div id="header-cart-count_md" class="cart-count grid place-items-center min-w-[22px] text_body_xs min-h-[22px] absolute place-content-center rounded-full -top-[0.3rem] -right-1 c-bg-tertiary c-text-tertiary-on empty:hidden"></div>
2933    
2934  </a>
2935
2936  </cart-drawer-toggle-button>
2937
2938    
2939
2940  </div>
2941</div>
2942          
2943        
2944    
2945  </div>
2946  
2947  
2948    
2949
2950
2951
2952
2953  
2954  
2955
2956  
2957  
2958  
2959
2960  
2961  
2962
2963  
2964  
2965
2966  
2967
2968  
2969
2970  <div class="header__search-wrapper section__wrapper w-full hidden border-x-0 border-t-0 z-10 border-none c-border-default-color c-bg-gray-100 c-text-gray-700" 
2971    x-show="searchBarOpen" @click.away="searchBarOpen = false; $nextTick(() => { $store.headerGroupManager.updateMeasurements() })" :class="{ '' : searchBarOpen , 'hidden' : !searchBarOpen }"
2972    @keydown.escape="searchBarOpen = false; $nextTick(() => { $store.headerGroupManager.updateMeasurements(); setTimeout(() => $refs.searchToggle.focus({ focusVisible: true }), 10) })"
2973    id="header-search-dropdown"
2974  >
2975    <div class="header__search-container flex md:max-w-[70ch] lg:max-w-[90ch] mx-auto justify-center section-spacing mx-auto w-full relative z-10 py-container-sm px-lg-sm max-w-full md:px-container-sm md:max-w-full">
2976      
2977      
2978
2979
2980
2981
2982    <form class="predictive-search__form flex-col items-center w-full" action="/search" method="get" role="search" aria-label="Sitewide">
2983      <div class="predictive-search__input-wrapper relative w-full">
2984        <input class="predictive-search__input appearance-none w-full text_body_md c-text-content-base c-bg-background shadow-sm rounded-none border-default-width c-border-gray-900 py-sm-xs px-sm-xs header-md__search-input" id="search-sections--28662239560050__header-md" type="search" value="" name="q" placeholder="Search"aria-label="Search" autocorrect="off" autocomplete="off" autocapitalize="off" spellcheck="false" x-ref="searchInput" >
2985        <button class="predictive-search__input-icon box-content h-full border-default-size flex absolute z-10 top-1/2 right-0 items-center justify-center transform -translate-y-1/2 border-r-default-width border-transparent c-text-gray-900 w-4 px-sm-xs" type="submit" aria-label="Search">
2986          
2987
2988
2989
2990  
2991  
2992  
2993      <svg xmlns="http://www.w3.org/2000/svg" viewBox="-64 0 576 512" class="icon icon--search umg-icon" fill="currentColor">
2994        <path d="M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352c79.5 0 144-64.5 144-144s-64.5-144-144-144S64 128.5 64 208s64.5 144 144 144z"/>
2995      </svg>
2996    
2997
2998        </button>
2999        
3000      </div>
3001    </form>
3002
3003    </div>
3004  </div>
3005
3006  
3007
3008  
3009
3010  
3011
3012
3013
3014  
3015  
3016
3017  
3018  
3019
3020  
3021    <div class="section__bg absolute col-start-1 row-start-1 col-span-1 row-span-1 z-0 h-full w-full select-none" aria-hidden="true">
3022      
3023      
3024
3025      
3026        
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042  
3043<img src="//niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=2400" srcset="//niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=100 100w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=300 300w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=400 400w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=500 500w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=600 600w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=800 800w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=1200 1200w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=1600 1600w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=2000 2000w" width="2400" height="1600" loading="eager" sizes="100vw" class="w-full h-full object-cover image__responsive">
3044
3045
3046
3047
3048      
3049    </div>
3050  
3051
3052
3053</div>
3054
3055</header><aside id="shopify-section-sections--28662239560050__global-messaging" class="shopify-section shopify-section-group-header-group global-messaging"></aside><aside id="shopify-section-sections--28662239560050__soft-redirect" class="shopify-section shopify-section-group-header-group section-soft-redirects">
3056 
3057  
3058
3059
3060  
3061  
3062
3063  
3064  
3065
3066  
3067  
3068
3069  
3070  
3071  
3072  
3073
3074  
3075  
3076
3077  
3078  
3079    
3080      
3081
3082
3083
3084
3085
3086
3087
3088
3089<div class="w-full soft-redirect soft-redirect--inline" x-data="{ softRedirectVisible: $persist(true).using(sessionStorage) }" :class="{ 'hidden': !softRedirectVisible }">
3090  <div class="section__wrapper scheme-scheme1 grid columns-1 rows-1 place-items-center relative z-0 overflow-hidden hidden" data-geo-show="AU,BE,BR,CA,CO,DE,DK,ES,FR,GB,IT,MX,NL,PL">
3091    <div class="section-spacing mx-auto w-full relative z-10 py-container-xs px-lg-xs max-w-full md:px-container-xs md:max-w-full">
3092      <div class="section__container grid py-none px-none md:px-none gap-y-none rounded-none shadow-none flex flex-col gap-y-sm-sm justify-center text-center">
3093        
3094    
3095    
3096    <h2 class="text_display_md">Looks like you are in <span data-geo-countryname-replace></span>.</h2>
3097    <p class="text_body_md">Would you like to visit your local store?</p>
3098    <ul class="flex flex-col md:flex-row gap-sm-sm justify-center items-stretch text-center">
3099      
3100
3101        
3102        
3103
3104        
3105          
3106          <li class="hidden" data-geo-show="AU">
3107            <a class="block w-full btn btn--primary" href="https://shopau.niallhoran.com/">Take me there</a>
3108          </li>
3109        
3110
3111        
3112        
3113
3114        
3115          
3116          <li class="hidden" data-geo-show="BE">
3117            <a class="block w-full btn btn--primary" href="https://musicstation.be/collections/niall-horan">Take me there</a>
3118          </li>
3119        
3120
3121        
3122        
3123
3124        
3125          
3126          <li class="hidden" data-geo-show="BR">
3127            <a class="block w-full btn btn--primary" href="https://www.umusicstore.com/niall-horan">Take me there</a>
3128          </li>
3129        
3130
3131        
3132        
3133
3134        
3135          
3136          <li class="hidden" data-geo-show="CA">
3137            <a class="block w-full btn btn--primary" href="https://shopca.niallhoran.com/">Take me there</a>
3138          </li>
3139        
3140
3141        
3142        
3143
3144        
3145          
3146          <li class="hidden" data-geo-show="CO">
3147            <a class="block w-full btn btn--primary" href="https://udiscovermusic.co/collections/niall-horan">Take me there</a>
3148          </li>
3149        
3150
3151        
3152        
3153
3154        
3155          
3156          <li class="hidden" data-geo-show="DE">
3157            <a class="block w-full btn btn--primary" href="https://shopde.niallhoran.com/">Take me there</a>
3158          </li>
3159        
3160
3161        
3162        
3163
3164        
3165          
3166          <li class="hidden" data-geo-show="DK">
3167            <a class="block w-full btn btn--primary" href="https://umgshop.com/collections/niall-horan">Take me there</a>
3168          </li>
3169        
3170
3171        
3172        
3173
3174        
3175          
3176          <li class="hidden" data-geo-show="ES">
3177            <a class="block w-full btn btn--primary" href="https://universalmusiconline.es/collections/niall-horan">Take me there</a>
3178          </li>
3179        
3180
3181        
3182        
3183
3184        
3185          
3186          <li class="hidden" data-geo-show="FR">
3187            <a class="block w-full btn btn--primary" href="https://vinylcollector.store/collections/niall-horan">Take me there</a>
3188          </li>
3189        
3190
3191        
3192        
3193
3194        
3195          
3196          <li class="hidden" data-geo-show="GB">
3197            <a class="block w-full btn btn--primary" href="https://shopuk.niallhoran.com/">Take me there</a>
3198          </li>
3199        
3200
3201        
3202        
3203
3204        
3205          
3206          <li class="hidden" data-geo-show="IT">
3207            <a class="block w-full btn btn--primary" href="https://shop.universalmusic.it/collections/niall-horan">Take me there</a>
3208          </li>
3209        
3210
3211        
3212        
3213
3214        
3215          
3216          <li class="hidden" data-geo-show="MX">
3217            <a class="block w-full btn btn--primary" href="https://udiscover.mx/collections/niall-horan">Take me there</a>
3218          </li>
3219        
3220
3221        
3222        
3223
3224        
3225          
3226          <li class="hidden" data-geo-show="NL">
3227            <a class="block w-full btn btn--primary" href="https://platenzaak.nl/collections/niall-horan">Take me there</a>
3228          </li>
3229        
3230
3231        
3232        
3233
3234        
3235          
3236          <li class="hidden" data-geo-show="PL">
3237            <a class="block w-full btn btn--primary" href="https://muzyka.sklep.pl/niall-horan">Take me there</a>
3238          </li>
3239        
3240
3241      <li>
3242        <button class="block w-full btn btn--secondary" x-on:click="softRedirectVisible = false; const dialog = $event.target.closest('dialog'); dialog.classList.add('hidden'); dialog.close()">Stay here</button>
3243      </li>
3244    </ul>
3245  
3246      </div>
3247    </div>
3248  </div>
3249</div>
3250
3251    
3252  
3253
3254</aside>
3255<!-- END sections: header-group --><main id="MainContent" role="main" class="z-10 grow scroll-mt-[var(--header-sticky-height)]"><div id="shopify-section-template--28662239953266__cart" class="shopify-section">
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275<div class="cart" id="cart" data-id="template--28662239953266__cart">
3276  <div class="section__wrapper scheme-scheme1 grid columns-1 rows-1 place-items-center relative z-0 overflow-hidden overflow-auto">
3277    <div class="section-spacing mx-auto w-full relative z-10 py-container-xs px-lg-2xs max-w-full md:px-container-2xs md:max-w-full col-start-1 row-start-1 col-span-1 row-span-1">
3278      <div class="section__container grid py-none px-none md:px-none gap-y-lg-2xs border-none c-border-gray-500 rounded-none shadow-none stacked grid gap-y-lg-2xs">
3279          <div class="cart__empty grow flex flex-col justify-center items-center gap-sm-lg">
3280
3281            <h4 class="cart-drawer__empty-title text_heading_2xl">Your cart is empty</h4>
3282            <p class="cart-drawer__empty-message text_body_lg">Time to fill up the cart</p>
3283
3284            <div class="cart__empty-action">
3285              
3286              
3287              <a href="https://niallhoran.com" class="btn btn--primary block z-1 relative">Continue shopping</a>
3288            </div>
3289          </div>
3290        
3291      </div>
3292    </div>
3293
3294    
3295
3296
3297
3298  </div>
3299</div>
3300
3301</div></main>
3302
3303  
3303<script defer="defer" src="//niallhoran.com/cdn/shop/t/56/assets/theme.bundle.js?v=157328288128894087361789132637"></script>
3303<script>
3304    window.focusVariantOnLoad = false;
3305    window.shop_iso_code = "US";
3306    window.shopUrl = 'https://niallhoran.com';
3307    window.currentCurrency = 'USD';
3308    window.shopCurrencyFormat = "${{amount}}"
3309    window.routes = {
3310      cart_add_url: '/cart/add',
3311      cart_change_url: '/cart/change',
3312      cart_update_url: '/cart/update',
3313      search_url: '/search',
3314      predictive_search_url: '/search/suggest',
3315      privacy_policy_url: '/policies/privacy-policy',
3316      legal_notice_url: '/policies/legal-notice',
3317      terms_of_sale_url: '/policies/terms-of-sale'
3318    };
3319    window.cartStrings = {
3320      error: `There was an error while updating your cart. Please try again.`,
3321      quantityError: `You can only add [quantity] of this item to your cart.`,
3322      pauseFrameUnavailableMessage: `Sorry, this frame is not available at this time`,
3323      pauseFrameSoldOutMessage: `Sorry this frame is no longer available`,
3324      pauseFrame: `Frame`
3325    };
3326    window.variantStrings = {
3327      addToCart: `Add to cart`,
3328      soldOut: `Sold out`,
3329      unavailable: `Unavailable`,
3330      extendCartTimer: `Extend cart timer`,
3331      chooseThisStyle: `Choose this style`
3332    };
3333    window.accessibilityStrings = {
3334      imageAvailable: `Image [index] is now available in gallery view`,
3335      shareSuccess: `Link copied to clipboard`,
3336      pauseSlideshow: `Pause slideshow`,
3337      playSlideshow: `Play slideshow`,
3338      nextSlide: `Next slide`,
3339      prevSlide: `Previous slide`,
3340      pauseFrameAltHtml: `{{ title }} frame {frameNum} from Video`,
3341      enterFullScreen: `Enter Fullscreen`,
3342      exitFullScreen: `Exit Fullscreen`,
3343      hideFilters: `Hide filters`,
3344      showFilters: `Show filters`,
3345      countdownElementChange: `The countdown has ended. Some elements on the page may have changed.`
3346    };
3347    window.shareStrings = {
3348      copyToClipboard: "Copy link",
3349      successMessage: "Link copied to clipboard",
3350      copyToClipboardError: "Error copying to clipboard",
3351      shareUrlError: "Error opening sharer"
3352    };
3353    window.quickModalStrings = {
3354      productError: "Product details not available.",
3355    };
3356    window.videoButtonStates = {
3357      playButton: "Play Button",
3358      pauseButton: "Pause Button"
3359    };window.shipDateLabel = 'Ships on: {{ date }}';
3360      window.shipDateLabelTitled = '<b>{{ title }}:</b> Ships on {{ date }}';window.jsDateLocale = "en-US";</script>
3360<!-- BEGIN sections: footer-group -->
3361<footer id="shopify-section-sections--28662239527282__footer" class="shopify-section shopify-section-group-footer-group site-footer">
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380<div class="section__wrapper scheme-scheme1 grid columns-1 rows-1 place-items-center relative z-0 overflow-visible c-bg-primary c-text-primary-on mt-none c-border-tertiary border-default-width-wide border-x-0 border-b-0 z-10">
3381  <div class="section-spacing mx-auto w-full relative z-10 py-container-md px-lg-xs max-w-full md:px-container-xs md:max-w-full grid gap-y-sm-sm gap-x-sm-xs md:grid-cols-12 mx-auto text-center">
3382
3383
3384
3385
3386
3387<div  class="footer__griditem footer__griditem--0 footer__griditem--logo md:col-span-2 md:row-span-1">
3388  <div class="logo-container w-full h-full flex flex-col md:justify-start items-center md:items-center py-none px-none">
3389    
3390      
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406  
3407
3408  
3409  
3410
3411  
3412  
3413  
3414
3415  
3416  
3417
3418  
3419  
3420
3421  
3422
3423  
3424
3425  <a class="logo-cntr block" href="/" style=" --logo-width: 8.125rem; --logo-width_md: 9.375rem; " aria-label="Niall Horan Official Store Home">
3426    
3427      
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443  
3444<img aria-hidden="true" src="//niallhoran.com/cdn/shop/files/7hfi9-wt387-nv091.png?v=1772637150&amp;width=625" srcset="//niallhoran.com/cdn/shop/files/7hfi9-wt387-nv091.png?v=1772637150&amp;width=100 100w, //niallhoran.com/cdn/shop/files/7hfi9-wt387-nv091.png?v=1772637150&amp;width=300 300w, //niallhoran.com/cdn/shop/files/7hfi9-wt387-nv091.png?v=1772637150&amp;width=400 400w, //niallhoran.com/cdn/shop/files/7hfi9-wt387-nv091.png?v=1772637150&amp;width=500 500w, //niallhoran.com/cdn/shop/files/7hfi9-wt387-nv091.png?v=1772637150&amp;width=600 600w" width="625" height="142" loading="lazy" sizes="(min-width: 768px) 150px, 130px" class=" image__responsive">
3445
3446
3447
3448
3449    
3450  </a>
3451    
3452    
3453  </div>
3454</div>
3455
3456
3457
3458
3459
3460<div  class="footer__griditem footer__griditem--1 footer__griditem--spacer md:col-span-1 md:row-span-1 py-none px-none">
3461  <div class="spacer-container hidden md:block"></div>
3462</div>
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487<div  class="footer__griditem footer__griditem--2 footer__griditem--navigation md:col-span-1 md:row-span-1 py-none px-none">
3488  <div class="navigation-container w-full h-full flex flex-col items-center gap-y-sm-xs text-center md:text-left md:justify-start">
3489    
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530<nav class="w-full md:flex md:items-start nav-wrapper" >
3531  <ul class="menu-nav text-center md:text-left md:flex justify-start md:flex-col md:justify-center md:grow gap-x-sm-xs gap-y-sm-xs nav-container flex flex-col md:flex-col">
3532    
3533      
3534        
3535        
3536        
3537        
3538          <li class="text_navigation_md c-text-primary-on hover:c-text-secondary no-underline hover:no-underline">
3539            <a href="/collections/music">Music</a>
3540          </li>
3541        
3542      
3543    
3544      
3545        
3546        
3547        
3548        
3549          <li class="text_navigation_md c-text-primary-on hover:c-text-secondary no-underline hover:no-underline">
3550            <a href="/collections/merch">Merch</a>
3551          </li>
3552        
3553      
3554    
3555      
3556        
3557        
3558        
3559        
3560          <li class="text_navigation_md c-text-primary-on hover:c-text-secondary no-underline hover:no-underline">
3561            <a href="/collections/all">Shop By Album </a>
3562          </li>
3563        
3564      
3565    
3566      
3567        
3568        
3569        
3570        
3571          <li class="text_navigation_md c-text-primary-on hover:c-text-secondary no-underline hover:no-underline">
3572            <a href="/pages/tour">Tour</a>
3573          </li>
3574        
3575      
3576    
3577      
3578        
3579        
3580        
3581        
3582          <li class="text_navigation_md c-text-primary-on hover:c-text-secondary no-underline hover:no-underline">
3583            <a href="/pages/newsletter">Sign Up </a>
3584          </li>
3585        
3586      
3587    
3588  </ul>
3589</nav>
3590
3591
3592    
3593  </div>
3594</div>
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
3618
3619<div  class="footer__griditem footer__griditem--3 footer__griditem--navigation md:col-span-2 md:row-span-1 py-none px-none">
3620  <div class="navigation-container w-full h-full flex flex-col items-center gap-y-sm-xs text-center md:text-left md:justify-start">
3621    
3622
3623
3624
3625
3626
3627
3628
3629
3630
3631
3632
3633
3634
3635
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
3662<nav class="w-full md:flex md:items-start nav-wrapper" aria-label="Support Links">
3663  <ul class="menu-nav text-center md:text-left md:flex justify-start md:flex-col md:justify-center md:grow gap-x-sm-xs gap-y-sm-xs nav-container flex flex-col md:flex-col">
3664    
3665      
3666        
3667        
3668        
3669        
3670          <li class="text_navigation_md c-text-primary-on hover:c-text-secondary no-u
3670nderline hover:no-underline">
3671            <a href="/pages/help">Help & Support</a>
3672          </li>
3673        
3674      
3675    
3676      
3677        
3678        
3679        
3680        
3681          <li class="text_navigation_md c-text-primary-on hover:c-text-secondary no-underline hover:no-underline">
3682            <a href="/policies/terms-of-sale">Terms</a>
3683          </li>
3684        
3685      
3686    
3687      
3688        
3689        
3690        
3691        
3692          <li class="text_navigation_md c-text-primary-on hover:c-text-secondary no-underline hover:no-underline">
3693            <a href="/policies/privacy-policy">Privacy</a>
3694          </li>
3695        
3696      
3697    
3698      
3699        
3700        
3701        
3702        
3703          <li class="text_navigation_md c-text-primary-on hover:c-text-secondary no-underline hover:no-underline">
3704            <a href="/policies/legal-notice">Do not sell my personal information</a>
3705          </li>
3706        
3707      
3708    
3709      
3710        
3711        
3712        
3713        
3714          <li class="text_navigation_md c-text-primary-on hover:c-text-secondary no-underline hover:no-underline">
3715            <a href="#"
3716              
3717                onclick="event.preventDefault();transcend.showConsentManager({'viewState': 'CompleteOptions' });"
3718              
3719              
3720              data-linklist="transcend"
3721            >Cookie Choices</a>
3722          </li>
3723        
3724      
3725    
3726  </ul>
3727</nav>
3728
3729
3730    
3731  </div>
3732</div>
3733
3734
3735<div  class="footer__griditem footer__griditem--4 footer__griditem--developer md:col-span-6 md:row-span-1 py-none px-none">
3736  <div class="developer-container">
3737    <div class="privy-embed-form" data-campaign="4593729"></div>
3738
3739  </div>
3740</div>
3741
3742
3743<div  class="footer__griditem footer__griditem--5 footer__griditem--developer md:col-span-12 md:row-span-1 py-none px-none">
3744  <div class="developer-container">
3745    <nav aria-label="Socials menu">
3746  <ul class="flex flex-wrap justify-center md:justify-center gap-none" style="--icon-width: 1.25rem; --icon-height: 1.25rem">
3747     
3748      <li>
3749        <a href="https://www.facebook.com/Niallofficial/" target="_blank" aria-label="Open Facebook social link" class="icon_facebook flex h-full fill-current justify-center items-center h-min-click-space w-min-click-space c-text-primary-on hover:c-text-secondary">
3750          <div class="social-icons__wrapper">
3751            <svg width="48" height="48" viewBox="0 0 48 48" fill="currentColor" class="umg-icon" xmlns="http://www.w3.org/2000/svg"><path d="M24 0C10.7453 0 0 10.7453 0 24C0 35.255 7.74912 44.6995 18.2026 47.2934V31.3344H13.2538V24H18.2026V20.8397C18.2026 12.671 21.8995 8.8848 29.9194 8.8848C31.44 8.8848 34.0637 9.18336 35.137 9.48096V16.129C34.5706 16.0694 33.5866 16.0397 32.3645 16.0397C28.4294 16.0397 26.9088 17.5306 26.9088 21.4061V24H34.7482L33.4013 31.3344H26.9088V47.8243C38.7926 46.3891 48.001 36.2707 48.001 24C48 10.7453 37.2547 0 24 0Z" /></svg>
3752          </div>
3753        </a>
3754      </li> 
3755    
3756     
3757      <li>
3758        <a href="https://twitter.com/NiallOfficial?ref_src=twsrc%5Egoogle%7Ctwcamp%5Eserp%7Ctwgr%5Eauthor" target="_blank" aria-label="Open Twitter social link" class="icon_twitter flex h-full fill-current justify-center items-center h-min-click-space w-min-click-space c-text-primary-on hover:c-text-secondary">
3759          <div class="social-icons__wrapper">
3760            <svg width="48" height="48" viewBox="0 0 48 48" fill="currentColor" class="umg-icon" xmlns="http://www.w3.org/2000/svg"><path d="M36.6526 3.80786H43.3995L28.6594 20.6548L46 43.5798H32.4225L21.7881 29.6759L9.61989 43.5798H2.86886L18.6349 25.5601L2 3.80786H15.9222L25.5348 16.5165L36.6526 3.80786ZM34.2846 39.5414H38.0232L13.8908 7.63413H9.87892L34.2846 39.5414Z" /></svg>
3761          </div>
3762        </a>
3763      </li> 
3764    
3765     
3766      <li>
3767        <a href="https://www.instagram.com/niallhoran/" target="_blank" aria-label="Open Instagram social link" class="icon_instagram flex h-full fill-current justify-center items-center h-min-click-space w-min-click-space c-text-primary-on hover:c-text-secondary">
3768          <div class="social-icons__wrapper">
3769            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" class="umg-icon"><path d="M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"/></svg>
3770          </div>
3771        </a>
3772      </li> 
3773    
3774     
3775      <li>
3776        <a href="https://www.youtube.com/channel/UCQcTX6rX7JhUpHg_T3STtoQ" target="_blank" aria-label="Open YouTube social link" class="icon_youtube flex h-full fill-current justify-center items-center h-min-click-space w-min-click-space c-text-primary-on hover:c-text-secondary">
3777          <div class="social-icons__wrapper">
3778            <svg width="48" height="48" viewBox="0 0 48 48" fill="currentColor" class="umg-icon" xmlns="http://www.w3.org/2000/svg"><path d="M47.5219 14.4001C47.5219 14.4001 47.0531 11.0907 45.6094 9.6376C43.7812 7.7251 41.7375 7.71572 40.8 7.60322C34.0875 7.11572 24.0094 7.11572 24.0094 7.11572H23.9906C23.9906 7.11572 13.9125 7.11572 7.2 7.60322C6.2625 7.71572 4.21875 7.7251 2.39062 9.6376C0.946875 11.0907 0.4875 14.4001 0.4875 14.4001C0.4875 14.4001 0 18.2907 0 22.172V25.8095C0 29.6907 0.478125 33.5813 0.478125 33.5813C0.478125 33.5813 0.946875 36.8907 2.38125 38.3438C4.20937 40.2563 6.60938 40.1907 7.67813 40.397C11.5219 40.7626 24 40.8751 24 40.8751C24 40.8751 34.0875 40.8563 40.8 40.3782C41.7375 40.2657 43.7812 40.2563 45.6094 38.3438C47.0531 36.8907 47.5219 33.5813 47.5219 33.5813C47.5219 33.5813 48 29.7001 48 25.8095V22.172C48 18.2907 47.5219 14.4001 47.5219 14.4001ZM19.0406 30.2251V16.7345L32.0062 23.5032L19.0406 30.2251Z" /></svg>
3779          </div>
3780        </a>
3781      </li> 
3782    
3783     
3784      <li>
3785        <a href="https://music.apple.com/us/artist/niall-horan/471260298" target="_blank" aria-label="Open Apple Music social link" class="icon_apple flex h-full fill-current justify-center items-center h-min-click-space w-min-click-space c-text-primary-on hover:c-text-secondary">
3786          <div class="social-icons__wrapper">
3787            <svg width="48" height="48" viewBox="0 0 48 48" fill="currentColor" class="umg-icon" xmlns="http://www.w3.org/2000/svg"><path d="M43.5839 37.4071C42.858 39.0841 41.9988 40.6277 41.0033 42.0469C39.6463 43.9817 38.5352 45.3209 37.6789 46.0646C36.3516 47.2853 34.9294 47.9105 33.4065 47.946C32.3132 47.946 30.9947 47.6349 29.4599 47.0038C27.9201 46.3757 26.5051 46.0646 25.2112 46.0646C23.8542 46.0646 22.3988 46.3757 20.8421 47.0038C19.2831 47.6349 18.0271 47.9638 17.0668 47.9964C15.6064 48.0586 14.1508 47.4157 12.6978 46.0646C11.7704 45.2557 10.6105 43.8691 9.22087 41.9047C7.72995 39.807 6.50422 37.3745 5.54395 34.6012C4.51554 31.6058 4 28.7051 4 25.8969C4 22.6801 4.69509 19.9057 6.08734 17.5807C7.18153 15.7132 8.63718 14.2401 10.4591 13.1586C12.2809 12.0772 14.2495 11.5261 16.3694 11.4908C17.5293 11.4908 19.0505 11.8496 20.9408 12.5548C22.8258 13.2623 24.0361 13.6211 24.5667 13.6211C24.9635 13.6211 26.308 13.2016 28.5874 12.3652C30.7428 11.5895 32.562 11.2683 34.0524 11.3948C38.0908 11.7207 41.1247 13.3127 43.1425 16.1807C39.5307 18.3691 37.7441 21.4342 37.7797 25.3662C37.8123 28.429 38.9233 30.9776 41.107 33.0013C42.0966 33.9405 43.2017 34.6664 44.4313 35.182C44.1646 35.9553 43.8832 36.696 43.5839 37.4071V37.4071ZM34.322 0.960762C34.322 3.36131 33.445 5.6027 31.6969 7.6773C29.5873 10.1436 27.0357 11.5687 24.2687 11.3439C24.2334 11.0559 24.213 10.7528 24.213 10.4343C24.213 8.12973 25.2162 5.66343 26.9978 3.6469C27.8872 2.6259 29.0185 1.77694 30.3903 1.09972C31.7591 0.432598 33.0539 0.0636663 34.2716 0.000488281C34.3072 0.321404 34.322 0.64234 34.322 0.960731V0.960762Z" /></svg>
3788          </div>
3789        </a>
3790      </li> 
3791    
3792     
3793      <li>
3794        <a href="https://open.spotify.com/artist/1Hsdzj7Dlq2I7tHP7501T4" target="_blank" aria-label="Open Spotify social link" class="icon_spotify flex h-full fill-current justify-center items-center h-min-click-space w-min-click-space c-text-primary-on hover:c-text-secondary">
3795          <div class="social-icons__wrapper">
3796            <svg width="48" height="48" viewBox="0 0 48 48" fill="currentColor" class="umg-icon" xmlns="http://www.w3.org/2000/svg"><path d="M23.9266 0C10.7126 0 0 10.7123 0 23.9263C0 37.1409 10.7126 47.8523 23.9266 47.8523C37.142 47.8523 47.8534 37.1409 47.8534 23.9263C47.8534 10.7131 37.142 0.00114285 23.9263 0.00114285L23.9266 0ZM34.8991 34.5086C34.4706 35.2114 33.5506 35.4343 32.8477 35.0029C27.23 31.5714 20.158 30.7943 11.8294 32.6971C11.0269 32.88 10.2269 32.3771 10.044 31.5743C9.86029 30.7714 10.3611 29.9714 11.1657 29.7886C20.28 27.7054 28.098 28.6029 34.4049 32.4571C35.1077 32.8886 35.3306 33.8057 34.8991 34.5086ZM37.8277 27.9929C37.2877 28.8714 36.1391 29.1486 35.262 28.6086C28.8306 24.6546 19.0269 23.5097 11.4197 25.8189C10.4331 26.1169 9.39114 25.5609 9.09171 24.576C8.79457 23.5894 9.35086 22.5494 10.3357 22.2494C19.0251 19.6129 29.8277 20.89 37.2134 25.4286C38.0906 25.9686 38.3677 27.1169 37.8277 27.9929ZM38.0791 21.2089C30.3677 16.6286 17.6449 16.2074 10.2823 18.442C9.1 18.8006 7.84971 18.1331 7.49143 16.9509C7.13314 15.768 7.8 14.5186 8.98314 14.1591C17.4349 11.5934 31.4849 12.0891 40.3631 17.3597C41.4289 17.9909 41.7774 19.3643 41.146 20.4263C40.5174 21.4897 39.1403 21.8403 38.0803 21.2089H38.0791Z" /></svg>  
3797          </div>
3798        </a>
3799      </li> 
3800    
3801     
3802      <li>
3803        <a href="https://www.tiktok.com/@niallhoran" target="_blank" aria-label="Open TikTok social link" class="icon_tiktok flex h-full fill-current justify-center items-center h-min-click-s
3803pace w-min-click-space c-text-primary-on hover:c-text-secondary">
3804          <div class="social-icons__wrapper">
3805            <svg width="48" height="48" viewBox="0 0 48 48" fill="currentColor" class="umg-icon" xmlns="http://www.w3.org/2000/svg"><path d="M34.1451 0H26.0556V32.6956C26.0556 36.5913 22.9444 39.7913 19.0725 39.7913C15.2007 39.7913 12.0894 36.5913 12.0894 32.6956C12.0894 28.8696 15.1315 25.7391 18.8651 25.6V17.3913C10.6374 17.5304 4 24.2783 4 32.6956C4 41.1827 10.7757 48 19.1417 48C27.5075 48 34.2833 41.1131 34.2833 32.6956V15.9304C37.3255 18.1565 41.059 19.4783 45 19.5479V11.3391C38.9157 11.1304 34.1451 6.12173 34.1451 0Z" /></svg>
3806          </div>
3807        </a>
3808      </li> 
3809    
3810      <li>
3811        <a href="https://www.whatsapp.com/channel/0029Vb7LmsDHLHQVeUP1cM19" target="_blank" aria-label="Open WhatsApp social link" class="icon_whatsapp flex h-full fill-current justify-center items-center h-min-click-space w-min-click-space c-text-primary-on hover:c-text-secondary">
3812          <div class="social-icons__wrapper">
3813            <svg width="48" height="55" viewBox="0 0 448 512" fill="currentColor" class="umg-icon" xmlns="http://www.w3.org/2000/svg"><path d="M380.9 97.1c-41.9-42-97.7-65.1-157-65.1-122.4 0-222 99.6-222 222 0 39.1 10.2 77.3 29.6 111L0 480 117.7 449.1c32.4 17.7 68.9 27 106.1 27l.1 0c122.3 0 224.1-99.6 224.1-222 0-59.3-25.2-115-67.1-157zm-157 341.6c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3 18.6-68.1-4.4-7c-18.5-29.4-28.2-63.3-28.2-98.2 0-101.7 82.8-184.5 184.6-184.5 49.3 0 95.6 19.2 130.4 54.1s56.2 81.2 56.1 130.5c0 101.8-84.9 184.6-186.6 184.6zM325.1 300.5c-5.5-2.8-32.8-16.2-37.9-18-5.1-1.9-8.8-2.8-12.5 2.8s-14.3 18-17.6 21.8c-3.2 3.7-6.5 4.2-12 1.4-32.6-16.3-54-29.1-75.5-66-5.7-9.8 5.7-9.1 16.3-30.3 1.8-3.7 .9-6.9-.5-9.7s-12.5-30.1-17.1-41.2c-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-6.9-.2-10.6-.2s-9.7 1.4-14.8 6.9c-5.1 5.6-19.4 19-19.4 46.3s19.9 53.7 22.6 57.4c2.8 3.7 39.1 59.7 94.8 83.8 35.2 15.2 49 16.5 66.6 13.9 10.7-1.6 32.8-13.4 37.4-26.4s4.6-24.1 3.2-26.4c-1.3-2.5-5-3.9-10.5-6.6z"/></svg>
3814          </div>
3815        </a>
3816      </li> 
3817  </ul>
3818</nav>
3819
3820  </div>
3821</div>
3822
3823
3824
3825
3826
3827<div  class="footer__griditem footer__griditem--6 footer__griditem--text md:col-span-12 md:row-span-1 py-none px-none text_body_xs c-text-primary-on">
3828  <div class="text-container w-full h-full flex flex-col text-center md:text-center md:justify-center">
3829
3830    
3831      
3832
3833      
3834        
3835          <p>
3836            If you are using a screen reader and are having problems using this website, please call 866-682-4413 for assistance.
3837          </p>
3838        
3839      
3840    
3841
3842    
3843  </div>
3844</div></div>
3845
3846  
3847
3848
3849
3850</div>
3851
3852
3853</footer>
3854<!-- END sections: footer-group -->
3854<script defer="defer" src="//niallhoran.com/cdn/shop/t/56/assets/utm-params.bundle.js?v=44857160626880170391789132636"></script>
3854
3855  
3855<script defer="defer" src="//niallhoran.com/cdn/shop/t/56/assets/section-render.bundle.js?v=141459979373393777191789132636"></script>
3855<script defer="defer" src="//niallhoran.com/cdn/shop/t/56/assets/product.bundle.js?v=118968317154721570471789132637"></script>
3855<script defer="defer" src="//niallhoran.com/cdn/shop/t/56/assets/template-cart.bundle.js?v=29863557894769406751789132637"></script>
3855<script defer="defer" src="//niallhoran.com/cdn/shop/t/56/assets/buy-now-pay-later.bundle.js?v=180350615595400516921789132637"></script>
3855
3856
3857
3858  
3858<script async>
3859    const affirmConfig = {
3860      public_api_key: '8KUZK8CFG93IUR0Q',
3861      script: 'https://cdn1.affirm.com/js/v2/affirm.js'
3862    };
3863
3864    if (!window.affirm) {
3865      (function(l,g,m,e,a,f,b){var d,c=l[m]||{},h=document.createElement(f),n=document.getElementsByTagName(f)[0],k=function(a,b,c){return function(){a[b]._.push([c,arguments]);}};c[e]=k(c,e,'set');d=c[e];c[a]={};c[a]._=[];d._=[];c[a][b]=k(c,a,b);a=0;for(b='set add save post open empty reset on off trigger ready setProduct'.split(' ');a<b.length;a++)d[b[a]]=k(c,e,b[a]);a=0;for(b=['get','token','url','items'];a<b.length;a++)d[b[a]]=function(){};h.async=!0;h.src=g[f];n.parentNode.insertBefore(h,n);delete g[f];d(g);l[m]=c;})(window,affirmConfig,'affirm','checkout','ui','script','ready');
3866    }
3867  </script>
3867
3868
3869<!-- BEGIN sections: background-group -->
3870<aside id="shopify-section-sections--28662239494514__page-background" class="shopify-section shopify-section-group-background-group page-bg">
3871  
3872
3873
3874  
3875  
3876
3877  
3878
3879  
3880
3881  
3882  
3883
3884  
3885  
3886
3887  <div class="fixed -z-[1] h-full w-full top-0 left-0 select-none" aria-hidden="true">
3888    
3889
3890
3891
3892
3893
3894
3895
3896
3897
3898
3899
3900
3901  <picture class="image__adaptive h-full w-full">
3902    
3903
3904
3905
3906
3907
3908
3909
3910
3911
3912
3913
3914
3915
3916
3917
3918    
3919  
3920<source data-src="//niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=2400" srcset="//niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=100 100w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=300 300w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=400 400w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=500 500w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=600 600w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=800 800w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=1200 1200w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=1600 1600w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=2000 2000w" width="2400" height="1600" loading="lazy" sizes="100vw" media="(min-width: 760px)">
3921
3922
3923
3924
3925    
3926
3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
3938
3939
3940
3941  
3942<img src="//niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=900" srcset="//niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=100 100w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=300 300w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=400 400w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=500 500w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=600 600w, //niallhoran.com/cdn/shop/files/envelope4_bkg.jpg?v=1772636708&amp;width=800 800w" width="900" height="600" loading="lazy" sizes="100vw" class="w-full h-full object-cover object-center image__responsive">
3943
3944
3945
3946
3947  </picture>
3948
3949
3950  </div>
3951
3952
3953
3954
3955</aside>
3956<!-- END sections: background-group -->
3957  <!-- STYLE SIGNED CUSTOM VISUAL TAGS -->
3958  <style>
3959    .card__tags .product__tag--signed {
3960      background-color: #51311f;
3961      border-color: #000000;
3962    }
3963  </style>
3964
3965
3966<!-- START HOMEPAGE CUSTOM LOGO SECTION -->
3967<script>
3968  document.addEventListener("DOMContentLoaded", () => {
3969    const customLogoSection = document.querySelector(".custom-logo-section");
3970    if (customLogoSection) {
3971      const supportsHover = window.matchMedia("(hover: hover) and (pointer: fine)");
3972      function handleHoverChange(e) {
3973        if (!e.matches) {
3974          customLogoSection.classList.add("no-hover");
3975        } else {
3976          customLogoSection.classList.remove("no-hover");
3977        }
3978      }
3979      supportsHover.addEventListener("change", handleHoverChange);
3980      handleHoverChange(supportsHover);
3981
3982      const customLogos = customLogoSection.querySelectorAll(".media-item-image-overlay");
3983      const customLogoObserver = new IntersectionObserver(
3984        (entries) => {
3985          entries.forEach((entry) => {
3986            if (entry.isIntersecting) {
3987              entry.target.classList.add("visible");
3988            } else {
3989              entry.target.classList.remove("visible");
3990            }
3991          });
3992        },
3993        {
3994          root: null,
3995          rootMargin: "-50% 0px -50% 0px",
3996          threshold: 0,
3997        },
3998      );
3999      for (const logo of customLogos) {
4000        customLogoObserver.observe(logo);
4001      }
4002    }
4003  });
4004</script>
4004
4005<!-- END HOMEPAGE CUSTOM LOGO SECTION -->
4006
4007<!-- START OPEN EXTERNAL LINKS IN NEW TAB -->
4008<script>
4009  document.addEventListener("DOMContentLoaded", function () {
4010    const links = document.links;
4011    for (let i = 0, linksLength = links.length; i < linksLength; i++) {
4012      if (links[i].hostname !== window.location.hostname) {
4013        links[i].target = "_blank";
4014        links[i].rel = "noreferrer noopener";
4015      }
4016    }
4017  });
4018</script>
4018
4019<!-- END OPEN EXTERNAL LINKS IN NEW TAB -->
4019<script>Shopify.analytics.publish('view_cart', {
4020            currency: 'USD',
4021            value: 0.00,
4022            items: [
4023            ],
4024            gift: false
4025          })</script>
4025<script async="async" src="//niallhoran.com/cdn/shop/t/56/assets/dotdigital-site-tracking.bundle.js?v=56115862656055679041789132637"></script>
4025<script>
4026      window.customerEmail = ''
4027      window.customerAcceptsMarketing = ''
4028      window.dotDigitalCartInsights = {
4029        programId: '26840',
4030        currency: 'USD',
4031        subtotal: '0.00',
4032        discountAmount: '0.00',
4033        grandTotal: '0.00',
4034        cartUrl: 'https://niallhoran.com',
4035        lineItems: '[]'
4036      }
4037    </script>
4037<script async="async" src="//niallhoran.com/cdn/shop/t/56/assets/dotdigital-cart-insight.bundle.js?v=73368649038972163841789132637"></script>
4037
4038<style>  </style>
4039<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
4039
4040</body>
4041</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.