1import{t as e}from"./jsx-runtime-BKllkxft.js";import{t}from"./project-card-BKo6KF_l.js";import{i as n,r}from"./index-DQRqUnud.js";import{t as i}from"./gig-list-CsLfk6qP.js";var a=e();function o(){return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(`div`,{className:`w-full bg-background py-16 lg:py-24`,children:(0,a.jsxs)(`div`,{className:`container mx-auto px-4 sm:px-6 lg:px-8`,children:[(0,a.jsx)(`h1`,{className:`font-display text-4xl font-bold text-foreground sm:text-5xl`,children:`Musical projects`}),(0,a.jsx)(`p`,{className:`mt-4 max-w-2xl text-lg text-muted-foreground`,children:`Harry's work spans four main projects. Each has its own character, but the songwriting thread runs through all of them.`}),(0,a.jsx)(`div`,{className:`mt-12 grid gap-6 sm:grid-cols-2 lg:grid-cols-3`,children:n.map(e=>(0,a.jsx)(t,{project:e},e.id))})]})}),(0,a.jsx)(`div`,{className:`w-full bg-subtle/30 py-16 lg:py-24`,children:(0,a.jsxs)(`div`,{className:`container mx-auto px-4 sm:px-6 lg:px-8`,children:[(0,a.jsx)(`h2`,{className:` font-display text-3xl font-bold text-foreground sm:text-4xl`,children:`Live gigs`}),(0,a.jsx)(`p`,{className:`mt-4 max-w-2xl text-lg text-muted-foreground`,children:`A look back at recent performances.`}),(0,a.jsx)(`div`,{className:`mt-10`,children:(0,a.jsx)(i,{gigs:r})})]})})]})}export{o as component};
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.