1<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/__l5e/assets-v1/fbde7a6f-7bab-4057-8fae-e1cb4a685247/loaded-project-cover.jpg"/><link rel="preload" as="image" href="/__l5e/assets-v1/327f39e2-2342-4f4b-a68d-22a81e19bc6b/abbey-road-sessions.jpg"/><link rel="preload" as="image" href="/__l5e/assets-v1/bd146c2c-8e36-483a-aa9e-8dac1ab3cff7/harry-spero-fabulous-friends-cover.jpg"/><link rel="preload" as="image" href="/__l5e/assets-v1/2cbf34cb-de5b-4d0c-ad90-47e47477de92/social-distancers-cover.jpg"/><link rel="preload" as="image" href="/__l5e/assets-v1/f8b0387a-5059-4dd5-9236-52b5c02acecd/september-album-cover.jpg"/><link rel="stylesheet" href="/assets/styles-DNCOh8bc.css" data-precedence="default"/><link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Epilogue:ital,wght@0,100..900;1,100..900&family=Urbanist:ital,wght@0,100..900;1,100..900&display=swap" data-precedence="default"/><title>Harry Spero</title><meta name="author" content="Harry Spero"/><meta name="twitter:site" content="@harryspero"/><meta name="description" content="Official website of Harry Spero. Explore music from Loaded, The September Project, and more."/><meta property="og:title" content="Harry Spero"/><meta property="og:description" content="Official website of Harry Spero. Explore music from Loaded, The September Project, and more."/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary_large_image"/><meta property="og:image" content="https://spero-soundstage-hub.lovable.app/__l5e/assets-v1/fbde7a6f-7bab-4057-8fae-e1cb4a685247/loaded-project-cover.jpg"/><meta name="twitter:image" content="https://spero-soundstage-hub.lovable.app/__l5e/assets-v1/fbde7a6f-7bab-4057-8fae-e1cb4a685247/loaded-project-cover.jpg"/><link rel="modulepreload" href="/assets/index-DQRqUnud.js"/><link rel="modulepreload" href="/assets/jsx-runtime-BKllkxft.js"/><link rel="modulepreload" href="/assets/routes-DnkYGaxa.js"/><link rel="modulepreload" href="/assets/project-card-BKo6KF_l.js"/><link rel="modulepreload" href="/assets/gig-list-CsLfk6qP.js"/><link rel="preconnect" href="https://fonts.googleapis.com"/><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="anonymous"/><link rel="icon" href="/favicon.png" type="image/png"/> 2<style> 3 #lovable-badge { 4 --badge-bg: #1b1b1b; 5 --badge-text: #c5c1b9; 6 --badge-text-hover: #dcdad5; 7 --badge-radius: 6px; 8 --badge-padding: 8px; 9 --badge-gap: 6px; 10 --badge-shadow: 11 0 0 0 1px rgba(0, 0, 0, 0.88), 12 0 1px 0 0 rgba(0, 0, 0, 0.04), 13 0 2px 2px -1px rgba(0, 0, 0, 0.08), 14 0 4px 4px -2px rgba(0, 0, 0, 0.08), 15 0 8px 8px -4px rgba(0, 0, 0, 0.08), 16 0 16px 16px -8px rgba(0, 0, 0, 0.08); 17 --badge-transition-duration: 0.2s; 18 --badge-transition-easing: cubic-bezier(0.16, 1, 0.32, 1); 19 --focus-color: #575ECF; 20 --focus-offset: 2px; 21 --focus-width: 2px; 22 23 position: fixed; 24 bottom: 12px; 25 right: 12px; 26 height: 24px; 27 display: flex; 28 align-items: center; 29 z-index: 1000000; 30 background-color: var(--badge-bg) !important; 31 color: var(--badge-text) !important; 32 border-radius: var(--badge-radius); 33 box-shadow: var(--badge-shadow) !important; 34 font-size: 12px; 35 font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; 36 font-weight: 400 !important; 37 text-transform: none !important; 38 font-feature-settings: normal !important; 39 transform: translateZ(0); 40 will-change: transform, opacity; 41 transition: opacity var(--badge-transition-duration) var(--badge-transition-easing); 42 } 43 44 #lovable-badge.closing { 45 opacity: 0; 46 pointer-events: none; 47 } 48 49 #lovable-badge-cta { 50 display: flex; 51 align-items: baseline; 52 gap: var(--badge-gap); 53 box-sizing: border-box; 54 padding: 4px var(--badge-padding) 0; 55 height: 100%; 56 color: inherit; 57 text-decoration: none; 58 white-space: nowrap; 59 border-radius: var(--badge-radius) 0 0 var(--badge-radius); 60 transition: 61 background-color var(--badge-transition-duration) ease, 62 color var(--badge-transition-duration) ease, 63 transform 0.1s ease; 64 } 65 66 #lovable-badge-cta:hover { 67 background: rgba(255, 255, 255, 0.04); 68 color: var(--badge-text-hover); 69 } 70 71 #lovable-badge-cta:active { 72 transform: scale(0.98); 73 } 74 75 #lovable-badge-cta:focus { 76 outline: none; 77 } 78 79 #lovable-badge-cta:focus-visible { 80 outline: var(--focus-width) solid var(--focus-color); 81 outline-offset: var(--focus-offset); 82 z-index: 1; 83 } 84 85 #lovable-badge-text { 86 line-height: 1; 87 } 88 89 /* The wordmark baseline sits at y=12 of the 16px logo; an empty 12px box 90 makes that the flex baseline so the text aligns to it on any system font. */ 91 #lovable-badge-logo { 92 position: relative; 93 display: block; 94 width: 52px; 95 height: 12px; 96 } 97 98 #lovable-badge-logo svg { 99 position: absolute; 100 top: 0; 101 left: 0; 102 } 103 104 #lovable-badge-divider { 105 width: 1px; 106 height: 24px; 107 background-color: rgba(255, 255, 255, 0.04); 108 flex-shrink: 0; 109 } 110 111 #lovable-badge-close { 112 width: 24px; 113 height: 24px; 114 min-width: 24px; 115 min-height: 24px; 116 cursor: pointer; 117 background: none; 118 border: none; 119 padding: 0; 120 display: flex; 121 align-items: center; 122 justify-content: center; 123 border-radius: 0 var(--badge-radius) var(--badge-radius) 0; 124 flex-shrink: 0; 125 transition: 126 background-color var(--badge-transition-duration) ease, 127 transform 0.1s ease; 128 } 129 130 #lovable-badge-close:hover { 131 background: rgba(255, 255, 255, 0.04); 132 } 133 134 #lovable-badge-close:active { 135 transform: scale(0.92); 136 } 137 138 #lovable-badge-close:focus { 139 outline: none; 140 } 141 142 #lovable-badge-close:focus-visible { 143 outline: var(--focus-width) solid var(--focus-color); 144 outline-offset: calc(var(--focus-offset) * -1); 145 z-index: 1; 146 } 147 148 #lovable-badge-close svg path { 149 fill: var(--badge-text); 150 transition: fill var(--badge-transition-duration) ease; 151 } 152 153 #lovable-badge-close:hover svg path { 154 fill: var(--badge-text-hover); 155 } 156 157 @media (prefers-reduced-motion: reduce) { 158 #lovable-badge, 159 #lovable-badge-cta, 160 #lovable-badge-close, 161 #lovable-badge-close svg path { 162 transition: none; 163 } 164 165 #lovable-badge-cta:active, 166 #lovable-badge-close:active { 167 transform: none; 168 } 169 } 170 171 @media (prefers-contrast: high) { 172 #lovable-badge { 173 --badge-bg: #000; 174 --badge-text: #fff; 175 --badge-text-hover: #fff; 176 border: 2px solid currentColor; 177 } 178 179 #lovable-badge-cta:focus-visible, 180 #lovable-badge-close:focus-visible { 181 outline-width: 3px; 182 } 183 } 184</style>
185<script defer src="/~flock.js" data-proxy-url="/~api/analytics"></script>
185<meta name="twitter:title" content="Harry Spero"><meta name="twitter:description" content="Official website of Harry Spero. Explore music from Loaded, The September Project, and more."></head><body class="min-h-screen bg-background font-sans antialiased"><div class="flex min-h-screen flex-col"><header class="sticky top-0 z-50 w-full border-b border-border/40 bg-background/80 backdrop-blur-md"><div class="container mx-auto flex h-16 items-center justify-between px-4 sm:px-6 lg:px-8"><a class="font-display text-xl font-bold tracking-tight text-foreground active" href="/" data-status="active" aria-current="page">Harry Spero</a><nav class="hidden items-center gap-8 md:flex"><a class="text-base font-medium transition-colors text-primary" href="/" data-status="active" aria-current="page">Home</a><a class="text-base font-medium transition-colors text-muted-foreground hover:text-primary" href="/about">About</a><button class="group inline-flex items-center gap-1 text-base font-medium text-muted-foreground transition-colors hover:text-primary data-[state=open]:text-primary" aria-label="Open music projects menu" type="button" id="radix-_R_eaq_" aria-haspopup="menu" aria-expanded="false" data-state="closed">Projects<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down h-4 w-4 transition-transform group-data-[state=open]:rotate-180" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><a class="text-base font-medium transition-colors text-muted-foreground hover:text-primary" href="/gigs">Gigs</a><a class="text-base font-medium transition-colors text-muted-foreground hover:text-primary" href="/contact">Contact</a></nav><div class="md:hidden"><button class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium cursor-pointer transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 disabled:cursor-not-allowed [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 hover:bg-accent hover:text-accent-foreground h-9 w-9" aria-label="Open menu" type="button" aria-haspopup="dialog" aria-expanded="false" data-state="closed"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-menu h-5 w-5" aria-hidden="true"><path d="M4 5h16"></path><path d="M4 12h16"></path><path d="M4 19h16"></path></svg></button></div></div></header><main class="flex-1"><!--$--><h1 class="sr-only">Harry Spero â musician and songwriter</h1><section class="w-full bg-background py-16 lg:py-24"><div class="container mx-auto px-4 sm:px-6 lg:px-8"><div class="mx-auto max-w-4xl text-center"><h2 class="text-2xl leading-snug text-foreground sm:text-3xl lg:text-4xl">Brand new Loaded album, coming October 2026, recorded at Abbey Road Studios in England.</h2></div><div class="mt-10 grid gap-6 sm:grid-cols-2"><div class="overflow-hidden rounded-xl border border-border/60 bg-muted shadow-sm"><img src="/__l5e/assets-v1/fbde7a6f-7bab-4057-8fae-e1cb4a685247/loaded-project-cover.jpg" alt="Loaded at Abbey Road Studios entrance" loading="eager" class="h-full w-full object-cover"/></div><div class="overflow-hidden rounded-xl border border-border/60 bg-muted shadow-sm"><img src="/__l5e/assets-v1/327f39e2-2342-4f4b-a68d-22a81e19bc6b/abbey-road-sessions.jpg" alt="Loaded recording at Abbey Road Studios" loading="eager" class="h-full w-full object-cover"/></div></div><div class="mt-16 border-t border-border lg:mt-24"></div></div></section><section class="w-full bg-subtle/30 py-20 lg:py-28"><div class="container mx-auto px-4 sm:px-6 lg:px-8"><div class="flex flex-col items-start justify-between gap-4 sm:flex-row sm:items-end"><div><h2 class="mt-2 font-display text-3xl font-bold text-foreground sm:text-4xl">Musical projects</h2></div><a href="/music" class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium cursor-pointer transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 disabled:cursor-not-allowed [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground h-9 px-4 py-2 font-display">View all<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right ml-2 h-4 w-4" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a></div><div class="mt-10 grid gap-6 sm:grid-cols-2 lg:grid-cols-4"><a href="/music/loaded" class="group block h-full"><div class="rounded-xl text-card-foreground shadow h-full overflow-hidden border border-border/60 bg-card transition-all duration-300 hover:shadow-lg hover:shadow-
185primary/5 hover:border-primary/40"><div class="aspect-square w-full overflow-hidden bg-muted"><div class="relative h-full w-full"><div class="absolute inset-0 flex flex-col items-center justify-center bg-muted p-6 text-center h-full w-full object-cover transition-transform duration-500 group-hover:scale-105"><p class="font-display text-lg font-medium text-muted-foreground">Loaded</p><p class="mt-1 text-sm text-muted-foreground">Album cover</p></div><img src="/__l5e/assets-v1/fbde7a6f-7bab-4057-8fae-e1cb4a685247/loaded-project-cover.jpg" alt="Loaded" class="h-full w-full object-cover transition-transform duration-500 group-hover:scale-105 opacity-0 transition-opacity duration-300"/></div></div><div class="p-5"><h3 class="font-display text-xl font-semibold text-card-foreground">Loaded</h3><p class="mt-2 line-clamp-4 text-sm text-muted-foreground">Loaded marks nearly 30 years of pop rock excellence with their soon to be released album recorded at Abbey Road</p><div class="mt-4 inline-flex items-center text-sm font-medium text-primary">View project<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right ml-1 h-4 w-4 transition-transform group-hover:translate-x-1" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></div></div></div></a><a href="/music/fabulous-friends" class="group block h-full"><div class="rounded-xl text-card-foreground shadow h-full overflow-hidden border border-border/60 bg-card transition-all duration-300 hover:shadow-lg hover:shadow-primary/5 hover:border-primary/40"><div class="aspect-square w-full overflow-hidden bg-muted"><div class="relative h-full w-full"><div class="absolute inset-0 flex flex-col items-center justify-center bg-muted p-6 text-center h-full w-full object-cover transition-transform duration-500 group-hover:scale-105"><p class="font-display text-lg font-medium text-muted-foreground">Harry Spero and His Fabulous Friends</p><p class="mt-1 text-sm text-muted-foreground">Album cover</p></div><img src="/__l5e/assets-v1/bd146c2c-8e36-483a-aa9e-8dac1ab3cff7/harry-spero-fabulous-friends-cover.jpg" alt="Harry Spero and His Fabulous Friends" class="h-full w-full object-cover transition-transform duration-500 group-hover:scale-105 opacity-0 transition-opacity duration-300"/></div></div><div class="p-5"><h3 class="font-display text-xl font-semibold text-card-foreground">Harry Spero and His Fabulous Friends</h3><p class="mt-2 line-clamp-4 text-sm text-muted-foreground">A Revolving Cast of Talented Friends, One Songwriter's Vision: Harry Spero and His Fabulous Friends</p><div class="mt-4 inline-flex items-center text-sm font-medium text-primary">View project<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right ml-1 h-4 w-4 transition-transform group-hover:translate-x-1" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></div></div></div></a><a href="/music/social-distancers" class="group block h-full"><div class="rounded-xl text-card-foreground shadow h-full overflow-hidden border border-border/60 bg-card transition-all duration-300 hover:shadow-lg hover:shadow-primary/5 hover:border-primary/40"><div class="aspect-square w-full overflow-hidden bg-muted"><div class="relative h-full w-full"><div class="absolute inset-0 flex flex-col items-center justify-center bg-muted p-6 text-center h-full w-full object-cover transition-transform duration-500 group-hover:scale-105"><p class="font-display text-lg font-medium text-muted-foreground">The Social Distancers</p><p class="mt-1 text-sm text-muted-foreground">Album cover</p></div><img src="/__l5e/assets-v1/2cbf34cb-de5b-4d0c-ad90-47e47477de92/social-distancers-cover.jpg" alt="The Social Distancers" class="h-full w-full object-cover transition-transform duration-500 group-hover:scale-105 opacity-0 transition-opacity duration-300"/></div></div><div class="p-5"><h3 class="font-display text-xl font-semibold text-card-foreground">The Social Distancers</h3><p class="mt-2 line-clamp-4 text-sm text-muted-foreground">Pandemic Perspective, Set to Music: Harry Spero & Noah Chenfeld'
185s wry response to the pandemic</p><div class="mt-4 inline-flex items-center text-sm font-medium text-primary">View project<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right ml-1 h-4 w-4 transition-transform group-hover:translate-x-1" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></div></div></div></a><a href="/music/the-september-project" class="group block h-full"><div class="rounded-xl text-card-foreground shadow h-full overflow-hidden border border-border/60 bg-card transition-all duration-300 hover:shadow-lg hover:shadow-primary/5 hover:border-primary/40"><div class="aspect-square w-full overflow-hidden bg-muted"><div class="relative h-full w-full"><div class="absolute inset-0 flex flex-col items-center justify-center bg-muted p-6 text-center h-full w-full object-cover transition-transform duration-500 group-hover:scale-105"><p class="font-display text-lg font-medium text-muted-foreground">The September Project</p><p class="mt-1 text-sm text-muted-foreground">Album cover</p></div><img src="/__l5e/assets-v1/f8b0387a-5059-4dd5-9236-52b5c02acecd/september-album-cover.jpg" alt="The September Project" class="h-full w-full object-cover transition-transform duration-500 group-hover:scale-105 opacity-0 transition-opacity duration-300"/></div></div><div class="p-5"><h3 class="font-display text-xl font-semibold text-card-foreground">The September Project</h3><p class="mt-2 line-clamp-4 text-sm text-muted-foreground">Songs Born From September 11th: A Heartfelt Tribute Album of Loss and Renewal</p><div class="mt-4 inline-flex items-center text-sm font-medium text-primary">View project<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right ml-1 h-4 w-4 transition-transform group-hover:translate-x-1" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></div></div></div></a></div></div></section><section class="w-full bg-background py-20 lg:py-28"><div class="container mx-auto px-4 sm:px-6 lg:px-8"><div class="flex flex-col items-start justify-between gap-4 sm:flex-row sm:items-end"><div><h2 class="mt-2 font-display text-3xl font-bold text-foreground sm:text-4xl">Recent gigs</h2></div><a href="/gigs" class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium cursor-pointer transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 disabled:cursor-not-allowed [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground h-9 px-4 py-2 font-display">All gigs<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right ml-2 h-4 w-4" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a></div><div class="mt-10"><div class="divide-y divide-border/60 border-y border-border/60"><article class="grid gap-5 py-8 sm:grid-cols-[10rem_1fr] sm:gap-8"><div><p class="font-display text-sm font-semibold uppercase tracking-wider text-primary">April 25, 2026</p></div><div class="flex flex-col gap-5 sm:flex-row sm:items-start sm:justify-between"><div class="max-w-2xl"><h3 class="font-display text-xl font-semibold text-foreground sm:text-2xl">The Clubhouse</h3><p class="mt-1 text-sm text-muted-foreground">East Hampton, NY</p><p class="mt-3 text-base leading-relaxed text-muted-foreground">Salute to Laurel Canyon</p></div><div class="w-full shrink-0 overflow-hidden rounded-lg sm:h-32 sm:w-48"><img src="/__l5e/assets-v1/58dbc528-1222-4b0c-b65a-5474a80c11f3/laurel-canyon-gig.jpeg" alt="The Clubhouse, East Hampton, NY" loading="lazy" class="h-full w-full object-cover object-center "/></div></div></article><article class="grid gap-5 py-8 sm:grid-cols-[10rem_1fr] sm:gap-8"><div><p class="font-display text-sm font-semibold uppercase tracking-wider text-primary">January 24, 2026</p></div><div class="flex flex-col gap-5 sm:flex-row sm:items-start sm:justify-between"><div class="max-w-2xl"><h3 class="font-display text-xl font-semibold text-foreground sm:text-2xl">The Clubhouse</h3><p class="mt-1 text-sm text-muted-foreground">East Hampton, NY</p><p class="mt-3 text-base leading-relaxed text-muted-foreground">Salute to Bob Dylan</p></div><div class="w-full shrink-0 overflow-hidden rounded-lg sm:h-32 sm:w-48"><img src="/__l5e/assets-v1/407b12b8-7ce9-4219-8340-ca2073ab46e1/bob-dylan-gig.jpg" alt="The Clubhouse, East Hampton, NY" loading="lazy" class="h-full w-full object-cover object-center "/></div></div></article><article class="grid gap-5 py-8 sm:grid-cols-[10rem_1fr] sm:gap-8"><div><p class="font-display text-sm font-semibold uppercase tracking-wider text-primary">January 14, 2026</p></div><div class="flex flex-col gap-5 sm:flex-row sm:items-start sm:justify-between"><div class="max-w-2xl"><h3 class="font-display text-xl font-semibold text-foreground sm:text-2xl">Triad Theater</h3><p class="mt-1 text-sm text-muted-foreground">New York, NY</p></div><div class="w-full shrink-0 overflow-hidden rounded-lg sm:h-32 sm:w-48"><img src="/__l5e/assets-v1/61bd41a7-e244-48d2-adb3-1312b47d13c9/triad-gig.jpg" alt="Triad Theater, New York, NY" loading="lazy" class="h-full w-full object-cover object-center "/></div></div></article></div></div></div></section>
185<script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script>
185<!--/$--></main><footer class="w-full border-t border-border/40 bg-primary/[0.03] py-12"><div class="container mx-auto px-4 sm:px-6 lg:px-8"><div class="flex flex-col items-center justify-between gap-4 md:flex-row"><div class="text-center md:text-left"><a class="font-display text-lg font-bold tracking-tight text-foreground active" href="/" data-status="active" aria-current="page">Harry Spero</a><p class="mt-1 text-sm text-muted-foreground">Singer / Songwriter</p></div><nav class="flex flex-wrap items-center justify-center gap-6 text-sm text-muted-foreground"><a class="transition-colors hover:text-primary active" href="/" data-status="active" aria-current="page">Home</a><a href="/about" class="transition-colors hover:text-primary">About</a><a href="/music" class="transition-colors hover:text-primary">Music</a><a href="/contact" class="transition-colors hover:text-primary">Contact</a><a href="https://www.youtube.com/@harryspero" target="_blank" rel="noopener noreferrer" aria-label="Harry Spero on YouTube" class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium cursor-pointer transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 disabled:cursor-not-allowed [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 hover:bg-accent h-9 w-9 text-muted-foreground hover:text-primary"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-youtube h-5 w-5" aria-hidden="true"><path d="M2.5 17a24.12 24.12 0 0 1 0-10 2 2 0 0 1 1.4-1.4 49.56 49.56 0 0 1 16.2 0A2 2 0 0 1 21.5 7a24.12 24.12 0 0 1 0 10 2 2 0 0 1-1.4 1.4 49.55 49.55 0 0 1-16.2 0A2 2 0 0 1 2.5 17"></path><path d="m10 15 5-3-5-3z"></path></svg></a></nav></div><div class="mt-8 text-center text-xs text-muted-foreground">© <!-- -->2026<!-- --> Harry Spero. All rights reserved.</div></div></footer></div>
185<script class="$tsr" id="$tsr-stream-barrier">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-DQRqUnud.js","/assets/jsx-runtime-BKllkxft.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-DQRqUnud.js"}}]},"/":$R[8]={preloads:$R[9]=["/assets/routes-DnkYGaxa.js","/assets/project-card-BKo6KF_l.js","/assets/gig-list-CsLfk6qP.js"]}}},matches:$R[10]=[$R[11]={i:"__root__�",u:1790999110256,s:"success",ssr:!0},$R[12]={i:"��",u:1790999110256,s:"success",ssr:!0}],lastMatchId:"��"})($R["tsr"]);$_TSR.e();document.currentScript.remove()</script>
185<script type="module" async="" src="/assets/index-DQRqUnud.js"></script>
185 186<aside 187 id="lovable-badge" 188 role="complementary" 189 dir="ltr" 190 lang="en" 191 aria-label="Edit with Lovable"> 192 <a 193 id="lovable-badge-cta" 194 target="_blank" 195 href="https://lovable.dev/projects/lovp_6prwcbbwwf96av6g7ztn3amrnq?utm_source=lovable-badge" 196 rel="noopener nofollow" 197 aria-label="Edit with Lovable"> 198 <span id="lovable-badge-text">Edit with</span> 199 <span id="lovable-badge-logo"><svg xmlns="http://www.w3.org/2000/svg" width="52" height="16" fill="none" viewBox="0 0 52 16"> 200 <path fill="#FCFBF8" fill-rule="evenodd" d="M20.318 5.25c.643 0 1.206.14 1.69.418a2.81 2.81 0 0 1 1.118 1.191c.266.513.4 1.115.4 1.807s-.134 1.296-.4 1.812a2.81 2.81 0 0 1-1.118 1.193c-.484.278-1.047.418-1.69.418s-1.208-.14-1.695-.418a2.85 2.85 0 0 1-1.125-1.193c-.262-.516-.393-1.12-.393-1.812s.131-1.294.393-1.807a2.848 2.848 0 0 1 1.125-1.191c.487-.279 1.052-.418 1.695-.418Zm0 1.425c-.27 0-.504.076-.7.228-.193.147-.34.37-.443.67-.102.295-.153.66-.153 1.093 0 .435.05.801.153 1.1.102.3.25.524.443.676.196.147.43.22.7.22.27 0 .502-.073.694-.22.193-.152.341-.375.443-.67.103-.299.153-.667.153-1.106 0-.65-.112-1.145-.337-1.481a1.08 1.08 0 0 0-.953-.51ZM32.7 5.25c.61 0 1.127.1 1.549.3.422.197.74.48.953.849.217.368.325.809.325 1.32v2.704c0 .29.02.562.062.812.044.245.108.4.19.466V12h-1.935a5.895 5.895 0 0 1-.105-.684 7.745 7.745 0 0 1-.02-.228 2.293 2.293 0 0 1-.151.203c-.205.242-.47.437-.793.584-.32.143-.685.215-1.094.215-.406 0-.77-.08-1.094-.24a1.845 1.845 0 0 1-.756-.682 1.984 1.984 0 0 1-.27-1.045c0-.606.178-1.069.535-1.388.356-.324.87-.534 1.542-.633l1.125-.16c.225-.032.403-.074.534-.123a.622.622 0 0 0 .288-.196.549.549 0 0 0 .093-.327.65.65 0 0 0-.11-.367.702.702 0 0 0-.32-.27c-.14-.07-.31-.105-.51-.105-.32 0-.576.083-.768.251-.193.164-.298.39-.314.676h-1.923c.016-.434.147-.82.393-1.155.25-.34.596-.604 1.039-.792.442-.189.954-.283 1.535-.283Zm.99 3.498a.98.98 0 0 1-.215.14 2.49 2.49 0 0 1-.584.178l-.473.092c-.315.061-.553.156-.713.283-.155.127-.233.305-.233.534 0 .23.084.412.252.547.168.135.383.203.645.203s.494-.058.694-.173c.201-.118.355-.282.461-.49.11-.21.166-.448.166-.714v-.6Zm4.526-2.375c.065-.125.138-.243.221-.349.197-.25.437-.44.719-.571.282-.135.6-.203.952-.203.528 0 .988.138 1.377.412.389.275.688.67.896 1.186.21.512.314 1.12.314 1.824 0 .7-.107 1.309-.32 1.825-.213.512-.518.906-.915 1.18-.393.275-.854.412-1.383.412-.352 0-.667-.062-.946-.184a1.832 1.832 0 0 1-.7-.554 2.2 2.2 0 0 1-.234-.383V12h-1.843V3h1.862v3.373Zm1.284.296c-.274 0-.51.085-.707.253-.192.163-.338.397-.436.7a3.376 3.376 0 0 0-.148 1.05c0 .406.05.759.148 1.058.098.299.243.53.436.694.197.164.433.246.707.246.279 0 .512-.082.7-.246.193-.164.336-.395.43-.694.099-.3.148-.652.148-1.058 0-.405-.05-.757-.147-1.056-.095-.299-.238-.53-.43-.694a1.015 1.015 0 0 0-.7-.253Zm9.416-1.419c.602 0 1.136.131 1.604.393.466.262.829.643 1.086 1.143.263.5.394 1.097.394 1.794 0 .25-.002.449-.006.596H47.51c.018.288.071.538.164.75a1.3 1.3 0 0 0 .491.596c.214.13.465.196.757.196.319 0 .583-.082.792-.246.209-.167.34-.403.393-.706h1.862a2.48 2.48 0 0 1-.485 1.235 2.54 2.54 0 0 1-1.051.805c-.439.188-.949.283-1.53.283-.655 0-1.225-.125-1.708-.375a2.672 2.672 0 0 1-1.13-1.143c-.267-.508-.4-1.137-.4-1.887 0-.712.14-1.327.418-1.843a2.86 2.86 0 0 1 1.155-1.186c.491-.27 1.051-.405 1.678-.405Zm-.044 1.345c-.274 0-.516.068-.725.203a1.29 1.29 0 0 0-.479.59 2.045 2.045 0 0 0-.132.498h2.562a1.873 1.873 0 0 0-.138-.602 1.061 1.061 0 0 0-.418-.516 1.243 1.243 0 0 0-.67-.173Z" clip-rule="evenodd"/> 201 <path fill="#FCFBF8" d="m26.605 9.995 1.342-4.566h1.924L27.628 12h-2.07l-2.33-6.57h1.98l1.397 4.565Zm-13.013.143h2.256c1.632 0 1.421 1.837 1.418 1.861h-5.603V3h1.93v7.138Zm31.516 1.861h-1.862V3h1.862v8.999Z"/> 202 <path fill="url(#a)" fill-rule="evenodd" d="M2.7 3c1.492 0 2.7 1.192 2.7 2.663v1.012h.9c1.49 0 2.7 1.192 2.7 2.662S7.791 12 6.3 12H0V5.663C0 4.193 1.209 3 2.7 3Z" clip-rule="evenodd"/> 203 <defs> 204 <radialGradient id="a" cx="0" cy="0" r="1" gradientTransform="matrix(-1.54236 7.07838 -10.231 -2.15602 4.627 5.022)" gradientUnits="userSpaceOnUse"> 205 <stop offset=".106" stop-color="#FE7B02"/> 206 <stop offset=".394" stop-color="#FE3F21"/> 207 <stop offset=".608" stop-color="#F858BC"/> 208 <stop offset=".929" stop-color="#575ECF"/> 209 </radialGradient> 210 </defs> 211</svg> 212 213</span> 214 </a> 215 216 <span id="lovable-badge-divider" aria-hidden="true"></span> 217 218 <button 219 id="lovable-badge-close" 220 aria-label="Dismiss" 221 title="Dismiss"
222 type="button"> 223 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="none" viewBox="0 0 16 16" aria-hidden="true"> 224 <path d="M10.646 4.646a.5.5 0 1 1 .707.708L8.707 8l2.646 2.646a.5.5 0 1 1-.707.707L8 8.707l-2.646 2.646a.5.5 0 1 1-.708-.707L7.293 8 4.646 5.354a.5.5 0 1 1 .708-.708L8 7.293l2.646-2.647Z"/> 225 </svg> 226 </button> 227</aside>
228<script> 229 (() => { 230 if (window.self !== window.top || navigator.userAgent.includes('puppeteer')) { 231 const badge = document.querySelector('#lovable-badge'); 232 if (badge) { 233 badge.style.display = 'none'; 234 } 235 return; 236 } 237 238 const closeButton = document.querySelector('#lovable-badge-close'); 239 if (closeButton) { 240 closeButton.addEventListener('click', function(event) { 241 event.preventDefault(); 242 event.stopPropagation(); 243 const badge = document.querySelector('#lovable-badge'); 244 if (badge) { 245 badge.classList.add('closing'); 246 setTimeout(function() { 247 if (badge) { 248 badge.style.display = 'none'; 249 } 250 }, 240); 251 } 252 }); 253 } 254 })(); 255</script>
255 256</body></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.