/* Self-hosted fonts (SIL Open Font License); woff2 files live in dist/fonts/. */
@font-face{font-family:'Bebas Neue';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/bebas-neue-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Bebas Neue';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/bebas-neue-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Josefin Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/josefin-sans-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Josefin Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/josefin-sans-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* Spacing scale: 4, 8, 12, 16, 24, 32. Older off-scale values are retired as rules are touched. */
:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background-size:4px 4px;color:var(--paper);font:17px/1.6 'Josefin Sans',sans-serif}input,select{font:inherit}a{color:inherit;text-decoration:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-5rem;left:1rem;padding:1rem;z-index:10}.skip-link:focus{top:1rem}.container{max-width:1240px;margin:auto;padding:0 24px}.site-header{border-bottom:1px solid var(--line)}.header-row{align-items:center;justify-content:space-between}.site-logo{display:block;flex:none}.site-logo img{width:100%;height:auto;display:block}.main-nav{display:flex;align-items:center;font-size:13px;letter-spacing:.1em;text-transform:uppercase;font-weight:700}.main-nav details{position:relative}.main-nav summary{list-style:none;cursor:pointer;white-space:nowrap}.main-nav summary::-webkit-details-marker{display:none}.main-nav summary{display:inline-flex;align-items:center}.main-nav summary::after{content:'';width:12px;height:12px;margin-left:6px;flex:none;background:currentColor;mask:var(--chevron-down) center/contain no-repeat}.main-nav details[open]>summary::after{mask-image:var(--chevron-up)}.main-nav a{white-space:nowrap}.nav-menu{position:absolute;top:100%;z-index:5;background:var(--panel);border:1px solid var(--line);padding:8px 0;box-shadow:var(--shadow-pop)}.nav-menu a{display:block;padding:8px 16px;text-transform:none;letter-spacing:normal;font-size:15px;font-weight:500}.site-tagline{font:17px 'Bebas Neue',Impact,sans-serif;letter-spacing:.04em}.site-tagline::before,.site-tagline::after{content:'★︎';color:var(--red);margin:0 12px}.site-tagline::before{margin-left:0}.section-title,.site-footer h2{font:30px/1.1 'Bebas Neue',Impact,sans-serif;letter-spacing:.04em;margin:0 0 24px}.archive-heading{display:flex;justify-content:space-between;gap:35px}.archive-heading>div:first-child{flex:1;min-width:0}.select-label{width:100%}.search input::placeholder{color:var(--stone)}.filter-row{align-items:center;justify-content:space-between;gap:16px}.filters{flex-wrap:wrap}.archive-item{width:100%;display:grid;align-items:center;color:var(--paper);text-align:left}.item-art{display:grid;place-items:center;overflow:hidden}.item-art img{height:100%;width:100%;object-fit:cover}.art-fallback{font:35px 'Bebas Neue',Impact,sans-serif;color:var(--red)}.item-title{display:block;line-height:1.35}.item-meta{display:block;color:var(--stone);margin-top:4px}.item-type{font-size:13px;text-align:right}.item-arrow{display:flex;color:var(--stone)}.empty{text-align:center;padding:32px}.site-footer{border-top:1px solid var(--line);color:var(--mustard)}.footer-inner{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px}.site-footer h2{color:var(--paper);margin-bottom:16px}.site-footer a{display:block;width:max-content;font-size:15px;margin:4px 0}.site-footer p{justify-self:end;font-size:15px}@media(max-width:900px){.container{padding-left:20px;padding-right:20px}.main-nav{font-size:11px}#results-count{display:block}.footer-inner{grid-template-columns:1fr 1fr}.site-footer p{grid-column:1/-1;justify-self:start}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.content-page{min-height:60vh}.content-eyebrow{font:20px 'Bebas Neue',Impact,sans-serif;letter-spacing:.04em}.prose{font-size:17px;line-height:1.75}.prose p{margin:0 0 24px}.prose h2{font:30px/1.1 'Bebas Neue',Impact,sans-serif;letter-spacing:.04em;margin:42px 0 16px;color:var(--paper)}.prose h3{font:24px/1.1 'Bebas Neue',Impact,sans-serif;letter-spacing:.04em;margin:32px 0 16px}.prose a{text-decoration:underline}.official-tracks{padding-left:32px}.official-tracks li{padding:1px 0 1px 2px;line-height:1.4}.official-tracks li::marker{color:var(--red);font-family:'Bebas Neue',Impact,sans-serif}.album-list,.related-albums{list-style:none;padding:0}.album-list li:last-child,.related-albums li:last-child{border:0}.album-list a,.related-albums a{display:flex;gap:16px;text-decoration:none}.album-list span{color:var(--stone);font-size:var(--meta-size)}.lyrics{white-space:normal;padding:4px 0;line-height:1.8}.muted{color:var(--stone)}

.album-list a{justify-content:flex-start;align-items:center}.release-list-art{flex:none;display:grid;place-items:center;overflow:hidden}.release-list-art img{width:100%}.release-art-fallback{font:38px 'Bebas Neue',Impact,sans-serif;color:var(--red)}.album-list .release-list-text{display:block;color:var(--paper);font-size:17px}.release-list-text strong,.release-list-text small{display:block}.album-list .release-list-text small{color:var(--stone);margin-top:4px}.release-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,360px);align-items:start}.release-layout .prose{min-width:0}.release-layout .release-cover{float:none;margin:0}.official-tracks a{color:inherit;text-decoration:none}@media(max-width:900px){.release-layout{display:flex;flex-direction:column}.release-layout .release-cover{order:-1}}

.release-sidebar{min-width:0}.release-facts{margin:24px 0 0}.release-facts>div{padding:12px 0;border-bottom:1px solid var(--line)}.release-facts dd{margin:2px 0 0;overflow-wrap:anywhere}.release-facts ul{list-style:none;margin:0;padding:0}.release-layout .prose h3{margin-top:36px}.release-layout .prose h3+.official-tracks{margin-top:0}@media(max-width:900px){.release-sidebar{order:-1;width:100%}.release-facts{max-width:360px}}

.related-albums a{justify-content:flex-start;align-items:center}.song-release-text{color:var(--paper)}.gig-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,300px)}.gig-layout .prose h2:first-child{margin-top:0}.gig-notes{white-space:pre-line}.gig-sidebar h2{margin:32px 0 12px}.gig-sidebar ul{padding-left:16px;margin:0}.gig-sidebar li{margin:8px 0}@media(max-width:900px){.gig-layout{display:block}.gig-sidebar{margin-top:38px}}
.gig-index{min-height:60vh}.gig-archive-item[hidden],#gig-empty[hidden]{display:none}.gig-stats>p{margin:-8px 0 24px;color:var(--stone);font-size:var(--sub-size)}.gig-song-stats{list-style:none;padding:0;margin:0}.gig-song-stats li{display:grid;grid-template-columns:minmax(0,1fr) 190px 80px;gap:16px}.gig-song-stats small{color:var(--stone)}.gig-song-stats strong{text-align:right;font-weight:500}@media(max-width:900px){.gig-song-stats li{grid-template-columns:minmax(0,1fr) 70px}.gig-song-stats small{display:none}}

.song-sidebar{border-top:0;padding-top:0}.song-sidebar h2{margin:0 0 12px}.song-sidebar p{margin:0}.gig-index .filter-row{justify-content:space-between}

.song-sidebar .related-albums{margin-bottom:0}.song-sidebar .related-albums a{gap:12px}.song-sidebar .related-albums .release-list-art{width:52px;height:52px}.gig-notes-section{border-top:1px solid var(--line)}.cover-credit{display:inline-block;margin-left:8px;color:var(--stone);font:13px/1.4 'Josefin Sans',sans-serif}

.site-header .header-row{display:flex;min-height:112px;gap:24px}.site-header .site-logo{width:170px}.header-navigation{display:flex;flex-direction:column;align-items:flex-end;gap:16px;min-width:0}.header-navigation .site-tagline{margin:0;padding:0;max-width:none;text-align:right;font-size:16px}.header-navigation .main-nav{margin-top:0;justify-content:flex-end}
@media(max-width:900px){.site-header .header-row{padding-top:16px;padding-bottom:16px;gap:16px}.site-header .site-logo{width:130px}.header-navigation{gap:12px}.header-navigation .site-tagline{font-size:13px}}@media(max-width:600px){.header-navigation{align-items:flex-start}.header-navigation .site-tagline{text-align:left}.header-navigation .main-nav{justify-content:flex-start}}

.gig-period-tabs{flex-wrap:wrap}.upcoming-home>p{margin:24px 0 0}

.song-vault-appearances small,.gig-sidebar li small{display:block;color:var(--stone)}

.recording-page .recording-tracks li .vault-song-link{font:400 17px/1.75 'Josefin Sans',sans-serif;text-transform:none;letter-spacing:normal;color:var(--paper)}.recording-page .recording-tracks li .vault-song-link{float:none}.song-sidebar .song-vault-appearances{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.song-sidebar .song-vault-appearances>a{display:block;font:400 16px/1.5 'Josefin Sans',sans-serif;text-transform:none}.song-sidebar .song-vault-appearances>a>span{display:block}.song-sidebar .song-vault-appearances>a>small{display:block;color:var(--stone)}

.track-version{font:400 15px/1.5 "Josefin Sans",sans-serif;text-transform:none;margin-left:.4em}

.recording-page .recording-tracks li .track-version{display:inline;white-space:normal}

.release-track-note{font:400 .9em/1.5 'Josefin Sans',sans-serif;color:var(--stone)}[data-discography] [hidden]{display:none!important}

.song-sidebar .song-origin{border-top:0;margin-top:0}.song-sidebar .song-origin>div{padding-top:0}

.release-notes{margin-bottom:32px}.release-notes>:last-child{margin-bottom:0}.release-notes+h2{margin-top:0}.official-tracks{margin:0 0 24px}.recording-track-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px}.recording-track-row>span{min-width:0}.recording-tracks .track-download{white-space:nowrap}.release-notes p{white-space:pre-line}

.gig-song-note{display:inline-block;margin-left:8px;color:var(--stone);font:13px/1.4 'Josefin Sans',sans-serif}

.cancelled-badge{color:var(--red)}.cancelled-notice p:last-child{margin-bottom:0}.gig-archive-item .cancelled-badge{margin-left:8px}.list-pagination button:disabled{cursor:default}[data-appearance][hidden],[data-history-empty][hidden]{display:none}.appearance-history h2{margin-top:0}.appearance-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:end}.appearance-controls label{flex:1;min-width:110px}.appearance-controls label:first-child{flex:2;min-width:180px}.appearance-count{margin:12px 0}.appearance-list,.person-credit-history,.gig-song-stats{display:grid;gap:6px}.appearance-list>a{display:grid;padding:12px}.appearance-list strong,.appearance-list small{display:block}.appearance-history .appearance-list a{color:inherit;text-decoration:none}@media(max-width:600px){.list-pagination{gap:8px}}.song-vault-appearances>a[hidden]{display:none}.song-sidebar [data-vault-appearances]{margin-top:32px}.song-sidebar [data-vault-appearances] h2{margin-top:0}.song-sidebar .list-pagination{gap:4px;margin-top:16px}.song-sidebar .list-pagination button{padding:8px}.song-sidebar .pagination-summary{flex-basis:100%;margin:4px 0 0}.song-sidebar .list-pagination .pagination-jump input{display:block;width:100%;margin-top:12px;padding:8px;font:16px 'Josefin Sans',sans-serif}

.archived-post-list>a{border-bottom:1px solid var(--line);color:inherit;text-decoration:none}.archived-post-list strong{display:block}.archive-note p{margin:4px 0 0;white-space:pre-line}.release-layout>.prose>h2:first-child{margin-top:0}

.gig-availability{display:inline-flex;gap:8px;align-items:center;vertical-align:middle;white-space:nowrap}.gig-status-icon{display:inline-block;width:16px;height:16px;color:var(--stone);background:currentColor;mask:var(--icon) center/contain no-repeat}.gig-status-icon.is-setlist{--icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 20 20%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M7 5h10M7 10h10M7 15h10%22/%3E%3Ccircle cx=%223%22 cy=%225%22 r=%22.7%22 fill=%22%23000%22 stroke=%22none%22/%3E%3Ccircle cx=%223%22 cy=%2210%22 r=%22.7%22 fill=%22%23000%22 stroke=%22none%22/%3E%3Ccircle cx=%223%22 cy=%2215%22 r=%22.7%22 fill=%22%23000%22 stroke=%22none%22/%3E%3C/svg%3E")}.gig-status-icon.is-incomplete{--icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 20 20%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M7 5h10M7 10h10%22/%3E%3Ccircle cx=%223%22 cy=%225%22 r=%22.7%22 fill=%22%23000%22 stroke=%22none%22/%3E%3Ccircle cx=%223%22 cy=%2210%22 r=%22.7%22 fill=%22%23000%22 stroke=%22none%22/%3E%3Cpath d=%22M7 15h4%22 stroke-dasharray=%221 3%22/%3E%3Ccircle cx=%2216%22 cy=%2215%22 r=%222%22/%3E%3C/svg%3E")}.gig-status-icon.is-vault{--icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 20 20%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M3 11V9a7 7 0 0 1 14 0v2%22/%3E%3Crect x=%222.5%22 y=%2210%22 width=%224%22 height=%227%22 rx=%221.5%22/%3E%3Crect x=%2213.5%22 y=%2210%22 width=%224%22 height=%227%22 rx=%221.5%22/%3E%3C/svg%3E")}.gig-status-icon.is-incomplete{color:var(--mustard)}

/* Surviving titles whose original post text is unavailable. */
.post-content-filter{display:flex;align-items:center;gap:8px;cursor:pointer}.post-content-filter input{width:18px;height:18px;accent-color:var(--red)}.post-title-line{display:flex;flex-wrap:wrap;gap:8px 12px}.post-missing-badge{color:var(--stone)}

/* People profiles keep identity and archive content in one continuous column. */
.profile-facts{display:flex;flex-wrap:wrap}.profile-facts>div{display:flex;flex-direction:column;gap:4px}.profile-fact-divider{color:var(--stone)}.profile-tabs[hidden]{display:none}.person-profile [data-profile-panel][hidden]{display:none}.has-profile-tabs .person-posts>h2,.has-profile-tabs .appearance-history>h2,.has-profile-tabs .person-credits>h2{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.person-profile .person-posts,.person-profile .appearance-history{margin:0}.profile-post-controls{display:flex;flex-wrap:wrap;align-items:end;gap:16px 24px}.profile-post-controls .post-content-filter{margin:0}.person-profile .post-list-count{margin:12px 0 4px}.archived-post-list>a{grid-template-columns:150px minmax(0,1fr)}.post-date{color:var(--stone)}.person-profile .appearance-controls{margin-top:0}.person-profile .list-pagination{margin-top:24px}
@media(max-width:600px){.profile-post-controls{gap:12px}}
@media(max-width:600px){.archived-post-list>a,.person-profile .appearance-list>a{grid-template-columns:1fr}}

.post-type-icon{display:inline-flex;flex:none;width:16px;height:16px;color:var(--stone);vertical-align:-3px}.post-type-icon svg{display:block;width:100%;height:100%}

/* Shared public layout: use the same rhythm as the people profiles. */
.content-page,.archive,.welcome-inner,.updates,.upcoming-home{max-width:1160px}
.content-page,.archive{padding-bottom:80px}
.content-page h1,.archive-heading h1{font:clamp(48px,6vw,76px)/1.05 'Bebas Neue',Impact,sans-serif;letter-spacing:normal;margin:0 0 24px;overflow-wrap:anywhere}

.archive-heading{align-items:start}.archive-heading p:not(.content-eyebrow),.gig-index .archive-heading p:not(.content-eyebrow){max-width:none}
.archive-heading .content-eyebrow,.gig-index .archive-heading .content-eyebrow{margin:0 0 8px}
.section-title{font-size:30px}
.content-page>.prose>p{max-width:none}
/* A consistent, labelled field treatment across all archives. */
.controls,.gig-index .controls{display:grid;gap:16px;align-items:end;margin:16px 0 0}
.search,.select-label,.appearance-controls label,.profile-type-filter{display:flex;flex-direction:column;align-items:stretch;gap:8px;height:auto;padding:0;border:0;background:none;color:var(--stone);font:13px/1.4 'Josefin Sans',sans-serif;letter-spacing:normal}
.search input,.select-label select,.appearance-controls input,.appearance-controls select,.profile-type-filter select{display:block;width:100%;height:42px;min-width:0;margin:0;padding:8px 12px;border:1px solid var(--line);border-radius:var(--radius);font:15px/1.4 'Josefin Sans',sans-serif}
.select-label select{flex:auto}
.search input:focus,.select-label select:focus,.appearance-controls input:focus,.appearance-controls select:focus,.profile-type-filter select:focus,.contact-form input:focus,.contact-form textarea:focus{border-color:var(--mustard)}
.select-label:focus-within{border:0}.profile-post-controls .post-content-filter{padding:12px 0;font-size:15px}
#results-count,#gig-count,.post-list-count,.appearance-count{font:13px/1.5 'Josefin Sans',sans-serif;letter-spacing:normal;color:var(--stone)}
.filter-row{margin:16px 0}

/* One toolbar row: period and type chips, then search, year and count. */
.archive-toolbar{flex-wrap:wrap;align-items:center}
.archive-toolbar>.controls,.archive-toolbar>.filter-row{display:contents}
.archive-toolbar .gig-period-tabs{margin:0;border:0;gap:8px}

.archive-toolbar .search{min-width:0;gap:0}
.archive-toolbar .search>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.archive-toolbar .select-label{gap:0}
.archive-toolbar .gig-period-tabs .filter,.archive-toolbar .filters .filter{box-sizing:border-box;display:inline-flex;align-items:center;min-height:0;margin:0}

/* Lists share open edges and quiet dividers instead of separate boxes. */

.archive-list,.album-list,.related-albums{display:grid;gap:6px;border:0;margin-bottom:0}

.gig-song-stats li{position:relative;padding:8px 12px}.gig-song-stats a::after{content:'';position:absolute;inset:0}.archive-item,.album-list a,.related-albums a{padding:8px 12px}

.album-list li,.related-albums li{border-bottom:0}.album-list a,.related-albums a{color:var(--paper)}

.item-type{color:var(--stone)}.item-meta b{padding:0 4px}

.gig-availability{margin-left:12px}
.gig-stats{margin-top:48px}.gig-song-stats strong{color:var(--stone)}
.release-list-art,.related-albums .release-list-art{width:48px;height:48px}

.release-layout,.gig-layout{gap:36px}.release-facts dt{font:var(--label-font);letter-spacing:var(--label-track);text-transform:uppercase}.release-facts dd{font-size:15px;margin-top:4px}
.gig-sidebar h2{font:24px/1.1 'Bebas Neue',Impact,sans-serif;letter-spacing:.04em}.song-sidebar h2{font:30px/1.1 'Bebas Neue',Impact,sans-serif;letter-spacing:.04em}

.post-page-heading{margin-bottom:24px}.post-page-heading h1{margin-bottom:0}
.post-title-line{align-items:center}

.updates,.upcoming-home{border-bottom:0}
.site-footer h2{font-size:20px}.site-footer{padding:32px 0}
@media(max-width:900px){.controls .search,.gig-index .controls .search{grid-column:1/-1}.filter-row{align-items:start;flex-wrap:wrap}.archive-item .item-type{display:none}.archive-heading{gap:16px}.release-layout,.gig-layout{gap:24px}}
@media(max-width:600px){.content-page,.archive{padding-bottom:56px}.content-page h1,.archive-heading h1{font-size:48px}.album-list a,.related-albums a{gap:16px}.release-facts{max-width:none}.profile-type-filter select{min-width:0}}

#archive-list .archive-item[hidden]{display:none}
@media(max-width:600px){.profile-type-filter{flex:1 0 180px}.profile-post-controls .post-content-filter{flex:1 1 260px;padding:4px 0 8px}}

/* Compact paired feeds and a plain-language guide on the homepage. */
.home-feeds{max-width:1160px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px;padding-top:40px;padding-bottom:32px}
.home-feeds>section{min-width:0;width:100%;padding:0;margin:0}
.home-feeds .section-title{margin-bottom:16px}
.home-feeds .archive-list{border-top:0}

.home-feeds .gig-archive-item .item-type{display:none}.home-feeds .upcoming-home>p{margin-top:16px;font-size:var(--meta-size)}
.site-guide{max-width:1160px;padding-top:24px;padding-bottom:52px;border-top:0}
.site-guide>p{max-width:none;color:var(--stone);font-size:var(--sub-size);line-height:1.7;margin:0 0 24px}
.site-guide dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 44px;margin:0}
.site-guide dt{margin-bottom:4px}.site-guide dd{margin:0;color:var(--stone);font-size:15px}
@media(max-width:900px){.home-feeds{grid-template-columns:1fr;gap:32px;padding-top:32px}.site-guide dl{grid-template-columns:1fr;gap:16px}.site-guide{padding-bottom:40px}}

[data-discography] .album-list{border-top:0;margin-top:0}

.profile-fact-divider{margin:0}

.contact-address{font-size:24px;overflow-wrap:anywhere}

.guide-artist-links{display:block;margin-top:8px;font-size:13px}.guide-artist-links a{text-underline-offset:3px}

.profile-membership-role{color:var(--stone)}

.recording-player{padding:0;border:0}.recording-player[hidden],.recording-track-actions [hidden],.player-message[hidden]{display:none}.recording-player .player-now-playing{line-height:1.5;margin:0 0 12px;color:var(--paper)}.recording-player audio{display:block;width:100%;height:42px;color-scheme:dark}.recording-player .player-message{font-size:13px;color:var(--stone);margin:12px 0 0}.recording-track-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}.recording-track-row{align-items:center}.track-player-fallback{display:block;width:100%;margin-top:12px;color-scheme:dark}@media(max-width:600px){.recording-track-row{grid-template-columns:minmax(0,1fr)}.recording-track-actions{justify-content:flex-start}.recording-player audio{min-width:0}}

.recording-track-actions{flex-wrap:wrap}

/* Home accents echo the archive's original warm red. */
.home-page .welcome{background:none;border-bottom:1px solid var(--line)}

.home-page .site-guide dl>div{padding:16px}

.person-credit-history>a{display:grid;grid-template-columns:100px minmax(0,1fr);gap:16px;padding:12px;text-decoration:none}.person-credit-history>a[hidden]{display:none}.credit-history-kind,.person-credit-history small{font-size:13px;color:var(--stone)}.person-credit-history small,.credit-history-roles{display:block;margin-top:4px}.credit-history-roles{font-size:15px;color:var(--paper)}.person-credits>h2{margin-top:0}@media(max-width:600px){.person-credit-history>a{grid-template-columns:65px minmax(0,1fr);gap:16px}}
/* Recording playlist */
.set-player-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.set-player-controls span{font-size:13px;color:var(--stone);margin-left:auto}.recording-player{margin:0 0 24px}@media(max-width:600px){.set-player-controls span{width:100%;margin:0}}
/* People directory: artist navigation and compact role groups. */
.people-grid{display:grid}.person-directory-card{display:flex;gap:16px;line-height:1.4}.person-directory-card>span:not(.person-card-arrow){min-width:0}.person-directory-card strong{display:block;text-wrap:balance}.person-directory-card small{display:block;color:var(--stone);margin-top:4px}.person-directory-card img{width:64px;height:64px;object-fit:cover}.person-card-arrow{display:flex;color:var(--stone);margin-left:auto}
/* Neutral overlines keep the red gradient headings distinct. */
.content-eyebrow{color:var(--stone)}.breadcrumbs ol{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 0;list-style:none;margin:0;padding:0}.breadcrumbs li{display:flex;align-items:baseline;min-width:0}.breadcrumbs li+li::before{content:'/';padding:0 12px;opacity:.55}.breadcrumbs a{text-decoration:none;text-underline-offset:4px}

.song-sidebar>section+section{margin-top:32px}

.song-personnel-list{margin:0;font:15px/1.5 'Josefin Sans',sans-serif}.song-personnel-list>div+div{margin-top:12px}

.cover-figure{margin:0 0 24px}.release-cover{border:1px solid var(--red);padding:4px;box-sizing:border-box}.detail-sidebar>section+section{margin-top:32px}.detail-sidebar h2{font:24px/1.1 'Bebas Neue',Impact,sans-serif;letter-spacing:.04em;margin:0 0 12px}.detail-sidebar .release-facts{margin:0;border-top:0}.image-attribution{font:var(--meta-size)/1.5 'Josefin Sans',sans-serif;color:var(--stone);margin-top:8px;overflow-wrap:anywhere}.image-attribution a{text-decoration:underline;text-underline-offset:2px}

.detail-sidebar .release-facts{max-width:none}.detail-sidebar>section>p{margin:0;font-size:15px;line-height:1.5}.sidebar-related-links{display:grid;gap:6px;list-style:none;padding:0;margin:0;line-height:1.5}.sidebar-related-links a{display:flex;justify-content:space-between;gap:8px;padding:8px 12px;color:var(--paper);text-decoration:none}

.recording-body .recording-player>h2{margin:0 0 16px}.recording-player .player-panel{padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}.recording-player .set-player-controls{margin:16px 0 0}.recording-player .player-now-playing{font-size:15px;font-weight:500;margin-bottom:12px}.recording-player+h2{margin-top:32px}@media(max-width:600px){.recording-player .player-panel{padding:16px}.recording-player .set-player-controls{gap:8px}.recording-player .set-player-controls span:empty{display:none}}

.recording-player audio{accent-color:var(--stone)}

/* Section-first navigation wraps cleanly as the archive grows. */
.header-navigation .main-nav{flex-wrap:wrap;column-gap:24px;row-gap:12px}.main-nav .nav-menu{left:auto;right:0;min-width:205px;max-width:calc(100vw - 40px)}@media(max-width:900px){.header-navigation .main-nav{column-gap:16px}}
@media(max-width:600px){.main-nav{position:relative}.main-nav details{position:static}.main-nav .nav-menu{left:0;right:auto}}

/* Shared artist navigation across public archive sections. */
.artist-navigation{flex-wrap:wrap;font:15px/1.5 'Josefin Sans',sans-serif}
.artist-navigation a{text-decoration:none}

.artist-navigation a[aria-current="page"]{color:var(--paper)}
.controls.section-controls{grid-template-columns:minmax(0,1fr) 180px}.controls [hidden]{display:none}
@media(max-width:900px){.artist-navigation{font-size:14px}.controls.section-controls{grid-template-columns:minmax(0,1fr) 125px}.section-controls .search{grid-column:auto}}

.section-directory .section-introduction{font-size:var(--lead-size);line-height:1.7;color:var(--paper);margin:0 0 24px}

/* Compact gig personnel, matching release personnel. */
.gig-sidebar .gig-information>h2{margin-top:0}.gig-information .release-facts{border-top:0;margin:0}

/* Posts: readable archive cards and a focused editorial page. */
.post-card-grid.archived-post-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;border:0;margin-top:16px}.post-card-grid.archived-post-list>a.post-card{display:flex;flex-direction:column;gap:16px;padding:24px;min-height:210px}.post-card-grid>a.post-card[hidden]{display:none}.post-card-meta{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:var(--meta-size);color:var(--stone)}.post-card-origin{display:flex;gap:8px;align-items:center}.post-card-meta .post-date{padding:0}.post-card-grid .post-card-title{line-height:1.25}.post-card-grid .post-card-excerpt{font-size:15px;line-height:1.65;color:var(--stone);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.post-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:4px;font-size:var(--meta-size);color:var(--stone)}.post-card-read{color:var(--paper);font-size:13px;white-space:nowrap}.post-card-read>span{margin-left:8px}.post-card-grid .post-missing-badge{align-self:flex-start}
.post-reading-page{max-width:1160px}.post-hero{margin-bottom:32px}.post-reader-kicker{display:flex;gap:8px;align-items:center;font:var(--label-font);letter-spacing:var(--label-track);text-transform:uppercase;color:var(--stone);margin-bottom:16px}.post-byline{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:var(--meta-size);color:var(--stone)}.post-byline a{color:var(--paper)}.post-author-mark{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--wash-line);background:var(--wash);color:var(--paper);font:22px 'Bebas Neue',Impact,sans-serif}.post-byline-divider{margin:0 4px;opacity:.5}.post-reading-layout{display:grid;grid-template-columns:minmax(0,1fr) 235px;gap:32px;align-items:start}.post-reading-sheet{padding:32px;border:1px solid var(--line);border-radius:var(--radius);min-width:0}.post-reader-body{max-width:none;font-size:18px;line-height:1.85;overflow-wrap:anywhere}.post-reader-body>p:last-child{margin-bottom:0}.post-source-panel h2{font:24px/1.1 'Bebas Neue',Impact,sans-serif;letter-spacing:.04em;margin:0 0 16px}.post-source-panel dl{margin:0 0 24px;font-size:15px}.post-source-panel dl>div+div{margin-top:16px}.post-source-panel dt{color:var(--red);font:var(--label-font);letter-spacing:var(--label-track);text-transform:uppercase;margin-bottom:4px}.post-source-panel dd{margin:0}.post-original-link{display:inline-block;font-size:13px;line-height:1.6;color:var(--paper);text-decoration:underline;text-underline-offset:4px}.post-source-panel .archive-note{padding:16px}.post-source-panel .archive-note strong{color:var(--paper);font-weight:600}.post-neighbours{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0 0;padding-top:24px;border-top:1px solid var(--line)}.post-neighbours>a{padding:16px 16px}.post-neighbours span{display:block;color:var(--stone);margin-bottom:8px}.post-neighbours strong{line-height:1.4}.post-missing-notice p{color:var(--stone);line-height:1.7;margin-bottom:0}.post-missing-notice h2{font-size:30px}
@media(max-width:900px){.post-reading-layout{grid-template-columns:1fr;gap:24px}.post-source-panel{border-top:1px solid var(--line);padding-top:24px}.post-source-panel dl{display:flex;flex-wrap:wrap;gap:16px 32px}.post-source-panel dl>div+div{margin:0}.post-reading-sheet{padding:24px}.post-reader-body{font-size:17px}.post-card-grid.archived-post-list>a.post-card{padding:16px}}
@media(max-width:600px){.post-card-grid.archived-post-list{grid-template-columns:1fr;gap:16px}.post-card-grid.archived-post-list>a.post-card{min-height:180px;gap:16px}.post-reading-sheet{padding:24px 16px}.post-neighbours{gap:12px}.post-neighbours>a{padding:16px 12px}.post-card-meta{gap:8px}}

.post-author-details{margin:0}.post-author-portrait{display:block;flex:none;width:36px;height:36px;object-fit:cover;object-position:center 20%;border:1px solid var(--line);border-radius:var(--radius)}.post-author-details .image-attribution{margin:12px 0 0}.social-platforms{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px 16px}.social-platform-label{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.social-platform-icon{display:inline-flex;flex:none;width:16px;height:16px;color:inherit;vertical-align:middle}.social-platform-icon svg{display:block;width:100%;height:100%}.post-reader-kicker{flex-wrap:wrap}.post-reader-kicker>.social-platforms{letter-spacing:normal;text-transform:none}.post-source-panel .social-platforms{gap:12px}

/* Keep chronological navigation in fixed slots, including at either end. */
.post-neighbours>.post-neighbour-newer{grid-column:1}
.post-source-panel .post-source-type{display:flex;align-items:center;gap:8px}

/* A quiet introduction, distinct from the archive's title bands. */
.home-page .welcome-inner{max-width:1160px;display:grid;grid-template-columns:220px minmax(0,1fr);gap:36px;align-items:start;padding-top:56px;padding-bottom:56px}
.home-page .welcome h1{font:68px/1 'Bebas Neue',Impact,sans-serif;margin:0}

.home-page .welcome-copy p{font-size:var(--sub-size);line-height:1.7;margin:0 0 16px;color:var(--stone)}
.home-page .welcome-copy p:first-child{font-size:var(--lead-size);color:var(--paper)}
.home-page .welcome-copy p:last-child{margin-bottom:0}
@media(max-width:900px){.home-page .welcome-inner{grid-template-columns:1fr;gap:24px;padding-top:36px;padding-bottom:36px}.home-page .welcome h1{font-size:52px}.home-page .welcome-copy p:first-child{font-size:18px}}

/* Durable artwork retains every edge of the uploaded image. */
.release-cover,.release-list-art img{object-fit:contain;object-position:center;height:auto;max-width:100%}.release-sidebar .release-cover{display:block;width:100%}.site-footer .site-version{display:block;margin-top:4px;color:var(--stone);font:var(--meta-size)/1.4 'Josefin Sans',sans-serif}
.parent-album-art{display:inline-block;object-fit:contain;vertical-align:middle;margin-right:12px}
.release-layout .release-cover{object-fit:contain;aspect-ratio:auto;height:auto}


.song-directory-controls{margin:0 0 10px}.song-directory-count{font-size:13px;color:var(--stone)}

.privacy-analytics{max-width:none;margin:40px 0 16px;padding:24px;background:var(--wash);border:1px solid var(--wash-line);border-radius:var(--radius)}.privacy-analytics h2{font:30px/1.1 'Bebas Neue',Impact,sans-serif;letter-spacing:.04em;margin:0 0 12px}.privacy-analytics p{max-width:none}.privacy-analytics-toggle{display:flex;align-items:center;gap:12px;width:max-content;max-width:100%;min-height:44px;font-weight:700}.privacy-analytics-toggle input{appearance:none;position:relative;flex:0 0 44px;width:44px;height:24px;margin:0;border:1px solid var(--line);border-radius:var(--pill);background:var(--panel-2);transition:background .15s ease}.privacy-analytics-toggle input::before{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--paper);transition:transform .15s ease}.privacy-analytics-toggle input:checked{background:var(--red-fill);border-color:var(--red-fill)}.privacy-analytics-toggle input:checked::before{transform:translateX(18px)}#privacy-analytics-status{min-height:1.5em;margin-bottom:0;color:var(--mustard)}@media(max-width:600px){.privacy-analytics{padding:16px;margin-top:24px}}

/* A single profile heading band contains portrait, identity and facts. */
.person-profile-header{display:grid;position:relative}
.profile-photo{margin:0}.profile-photo .profile-portrait{display:block;width:100%;height:auto}
.profile-intro{min-width:0}.person-profile-header:not(:has(.profile-photo)){grid-template-columns:1fr}.person-profile-header:not(:has(.profile-photo))>:is(.profile-intro,.profile-bio,.profile-facts){grid-column:1}
.person-profile-header .content-eyebrow{margin:0 0 8px}
.profile-facts{gap:16px 32px;padding-top:16px;font-size:15px;line-height:1.6;min-width:0}.profile-facts>div{min-width:0;max-width:100%}.profile-facts>div>span{overflow-wrap:anywhere}
@media(max-width:600px){.profile-facts{gap:16px 24px}.profile-post-controls{align-items:center}}

/* Band pages bring biographies, member profiles and posts into one archive. */
.band-page,.bands-page{max-width:1160px}
.band-introduction{margin-bottom:24px}

.band-members,.band-biography,.band-unassociated{margin:42px 0;scroll-margin-top:25px}
.band-page h2,.bands-page h2{font:30px/1.1 'Bebas Neue',Impact,sans-serif;letter-spacing:.04em}

.band-core-members{margin:16px 0}
.band-core-members .person-directory-card{display:grid;align-content:start;position:relative}

.band-core-members .person-card-arrow{position:absolute;right:12px;bottom:10px}
.person-directory-mark{display:grid;place-items:center;font:36px 'Bebas Neue',Impact,sans-serif;color:var(--stone)}

.band-contributor-group>summary>span{font-size:13px;margin-left:8px}

.band-bio-section{border:1px solid var(--line);margin:12px 0;scroll-margin-top:20px}
.band-bio-section>summary{padding:16px;cursor:pointer;font:24px/1.1 'Bebas Neue',Impact,sans-serif;letter-spacing:.04em}
.band-bio-section[open]>summary{border-bottom:1px solid var(--line);background:var(--wash)}
.band-bio-section>.prose{padding:24px 24px 4px;max-width:none}
.band-portal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:36px 0}
.band-portal-card{padding:24px;display:flex;flex-direction:column;gap:12px;min-height:260px;}

.band-portal-card h2{margin:8px 0 12px}
.band-portal-kicker{font:var(--label-font);letter-spacing:var(--label-track);text-transform:uppercase;color:var(--red)}
.band-portal-card p{color:var(--stone);line-height:1.6}
.band-portal-enter{margin-top:auto;font-size:15px}
.post-card-author{font-size:13px;color:var(--stone)}
@media(max-width:900px){.band-core-members,.band-portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.band-core-members,.band-portal-grid{grid-template-columns:1fr}.band-portal-card{min-height:190px}.band-bio-section>summary{padding:16px}.band-bio-section>.prose{padding:16px 16px 0}}

/* Band and individual archives share the same post cards and pagination. */
.band-page .person-posts{scroll-margin-top:24px}

.band-contributor-grid .person-directory-card{gap:12px}

.band-contributor-grid .person-directory-card small{font-size:var(--meta-size);line-height:1.35}

/* Release tracks and compact song appearance links. */

.song-sidebar .song-vault-appearances>a{padding:8px 12px}
.song-sidebar .song-vault-appearances>a>small{font-size:var(--meta-size);margin-top:3px}
.song-sidebar .song-appearance-count{font-size:17px;line-height:1.6;margin-bottom:12px}
.song-appearance-count strong{font-weight:700}
.gig-layout .gig-notes-section{margin-top:32px;padding-top:24px}

.profile-facts>.profile-memberships{gap:16px}.profile-membership-group{display:flex;flex-direction:column;gap:4px}.profile-membership-group>span{overflow-wrap:anywhere}

@media(min-width:901px){.profile-facts{align-items:flex-start;column-gap:32px}.profile-facts>.profile-memberships{display:contents}.profile-facts .profile-membership-group,.profile-facts>div:not(.profile-memberships){flex:1 1 160px;min-width:0}}
/* Setlist release breakdown. */
.setlist-release-breakdown{margin-top:32px}
.setlist-release-breakdown h2{font:24px/1.1 'Bebas Neue',Impact,sans-serif;letter-spacing:.04em;margin:0 0 12px}
.setlist-release-content{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;align-items:center}
.setlist-release-chart{display:grid;place-items:center}
.setlist-release-donut{width:142px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;position:relative}
.setlist-release-donut::before{content:"";position:absolute;inset:19px;border-radius:50%;background:var(--bg)}
.setlist-release-donut>span{position:relative;display:grid;text-align:center;line-height:1.15}
.setlist-release-donut strong{font:32px/1 'Bebas Neue',Impact,sans-serif;color:var(--paper)}
.setlist-release-donut small{color:var(--stone)}
.setlist-release-legend{list-style:none;padding:0;margin:0}
.setlist-release-legend>li{border-bottom:1px solid var(--line);font-size:16px}
.setlist-release-legend summary{display:grid;grid-template-columns:10px minmax(0,1fr) auto auto 10px;gap:8px;align-items:center;padding:12px 0;cursor:pointer;list-style:none}
.setlist-release-legend summary::-webkit-details-marker{display:none}
.setlist-release-legend summary::after{content:"";width:10px;height:10px;background:var(--stone);mask:var(--tri-right) center/contain no-repeat}
.setlist-release-legend details[open]>summary::after{mask-image:var(--tri-down)}
.setlist-release-songs{margin:0 0 2px 18px;padding-left:20px}
.setlist-release-songs li{padding:0;line-height:1.4}
.prose .setlist-release-link{margin:0 0 12px 18px}
@media(max-width:450px){.setlist-release-legend summary{grid-template-columns:10px minmax(0,1fr) auto 10px}.setlist-release-count{grid-column:2;grid-row:2}.setlist-release-percent{grid-column:3;grid-row:1}.setlist-release-legend summary::after{grid-column:4;grid-row:1}}
.setlist-release-legend>li:last-child{border-bottom:0}
.setlist-release-swatch{width:9px;height:9px;border-radius:50%;background:var(--release-color)}
.setlist-release-label{min-width:0;overflow-wrap:anywhere}
.setlist-release-label a,.setlist-release-label strong{font-weight:600;text-decoration:none}
.setlist-release-label small{display:inline;color:var(--stone);margin-left:4px}
.setlist-release-label .setlist-release-artist{color:var(--stone)}
.setlist-release-label .setlist-release-artist::before{content:"·";margin-right:4px;color:var(--stone)}
.setlist-release-count{white-space:nowrap;color:var(--stone)}
.setlist-release-percent{white-space:nowrap;min-width:39px;text-align:right;color:var(--paper)}
@media(max-width:900px){.setlist-release-content{grid-template-columns:minmax(0,1fr);gap:16px}.setlist-release-chart{order:-1}}
.release-main{min-width:0}.release-main>.prose>h2:first-child{margin-top:0}
.release-credits{margin-top:42px}.release-credits>section{min-width:0;margin-bottom:32px}
.credits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:24px 32px}.credits-grid>div{min-width:0}.credits-grid h3{font:var(--label-font);letter-spacing:var(--label-track);text-transform:uppercase;color:var(--red);margin:0 0 8px}.release-credits h2{font:30px/1.1 'Bebas Neue',Impact,sans-serif;letter-spacing:.04em;margin:0 0 16px}
.release-credits .song-personnel-list{font-size:15px}.release-credits .song-personnel-list>div{padding:8px 0;border-bottom:1px solid var(--line)}.release-credits .song-personnel-list>div+div{margin-top:0}.release-main>.prose+.release-credits{margin-top:12px}
.track-credits{list-style:none;margin:8px 0 0;padding:0;font:13px/1.5 'Josefin Sans',sans-serif;color:var(--stone)}.track-credits li,.official-tracks .track-credits li{border:0;padding:0}.track-credit-role::after{content:' –'}.track-credits a{color:var(--paper);text-decoration:none}

[data-discography] [data-release-empty]{margin:0;padding:16px 0;border-bottom:1px solid var(--line);color:var(--stone)}

.track-line{display:inline}.track-duration{display:inline-block;margin-left:12px;white-space:nowrap;font:13px/1.5 'Josefin Sans',sans-serif;color:var(--stone);font-variant-numeric:tabular-nums}
/* Tighter release track listing. */

/* Song page credits: plain links, laid out like release credits. */

/* Pages without a breadcrumb keep the title where breadcrumb pages put it. */

/* Title band sits flush under the site header; pages that open with a breadcrumb keep a small gap. */
/* Every public title is one band: a breadcrumb line sits inside it above the title. */
.content-page,.archive{padding-top:0}
main.content-page,.archive-heading>div{position:relative}
.breadcrumbs:has(+h1){position:absolute;top:10px;left:40px;right:16px;z-index:1;margin:0;font-size:16px;overflow:hidden}
.archive-heading .breadcrumbs:has(+h1),.section-directory>.breadcrumbs:has(+h1){left:16px}.breadcrumbs:has(+.person-profile-header){position:absolute;top:10px;left:40px;right:16px;z-index:1;margin:0;font-size:16px;overflow:hidden}.breadcrumbs+.person-profile-header{padding-top:42px}
.breadcrumbs:has(+h1) ol{flex-wrap:nowrap}.breadcrumbs:has(+h1) li{flex:none}.breadcrumbs:has(+h1) li:last-child{flex:0 1 auto;min-width:0}.breadcrumbs:has(+h1) li:last-child>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.breadcrumbs+h1{min-height:112px;padding-top:42px;margin-bottom:24px}
@media(max-width:600px){.breadcrumbs:is(:has(+h1),:has(+.person-profile-header)){left:28px;top:8px;font-size:15px}.breadcrumbs+.person-profile-header{padding-top:36px}.archive-heading .breadcrumbs:has(+h1){left:12px}.breadcrumbs+h1{min-height:92px;padding-top:36px}}
.band-page .band-introduction>p{max-width:none}

.release-format-list{list-style:none;margin:0;padding:0}.release-format-list li+li{margin-top:6px}.release-format-list details>summary,.release-edition-dates>summary{cursor:pointer;line-height:1.5}.release-format-list details>ul{list-style:none;padding:8px 0 0 16px}.release-edition-dates{margin-top:8px}.release-edition-dates ul{padding-top:8px}.release-edition-dates li+li{margin-top:8px}.release-edition-dates li>span{color:var(--stone)}
.contact-form{max-width:none;margin:0 0 32px}.contact-form label{display:block;margin:16px 0 6px;font-weight:700}.contact-form label span{font-weight:400;color:var(--stone)}.contact-form input,.contact-form textarea{width:100%;box-sizing:border-box;padding:8px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--field);color:var(--paper);font:inherit}.contact-form textarea{resize:vertical;min-height:140px}.contact-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:18px}.contact-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact-status{margin:0;color:var(--mustard)}.contact-status.contact-error{color:var(--red)}
.release-regional-notes{margin-bottom:16px}

/* Keep each variation heading, notes and track list visually connected. */
.release-layout .prose .release-variation-notes{font-size:15px;line-height:1.5;margin:0 0 12px;background:var(--wash);border:1px solid var(--wash-line);border-radius:var(--radius);padding:12px 16px}
.release-variation-note-label{display:block;color:var(--red);font:var(--label-font);letter-spacing:var(--label-track);text-transform:uppercase;margin-bottom:4px}
.release-layout .prose .release-variation-notes p{margin:0 0 8px}
.release-layout .prose .release-variation-notes p:last-child{margin-bottom:0}


/* Singer colours are validated and stored with each song. */
.vc-blue{--vocalist-colour:light-dark(#2a6fc4,#5aa2f0)}.vc-rose{--vocalist-colour:light-dark(#c23f7c,#f07aa8)}.vc-teal{--vocalist-colour:light-dark(#13796d,#3cc0ae)}.vc-amber{--vocalist-colour:light-dark(#996200,#e8ac2c)}.vc-violet{--vocalist-colour:light-dark(#7448bd,#a98af0)}.vc-green{--vocalist-colour:light-dark(#3c7a28,#7cc464)}.vc-coral{--vocalist-colour:light-dark(#c4491f,#f08560)}.vc-slate{--vocalist-colour:light-dark(#5f6b78,#9aa6b2)}.lyric-vocalist-key{display:flex;flex-wrap:wrap;gap:8px 12px;list-style:none;padding:0;margin:0 0 16px;font-size:15px}.lyric-vocalist-key li{display:flex;align-items:center;padding:2px 12px 2px 8px;border:1px solid var(--line);border-radius:var(--pill)}.lyric-vocalist-key span{width:11px;height:11px;background:var(--vocalist-colour);border-radius:50%}.lyric-vocalist-key span+span{margin-right:3px}.lyric-vocalist-key li{gap:4px}.lyrics.lyrics-vocalists{border-left:0;padding-left:0}.lyric-vocalist-group{position:relative;overflow-wrap:anywhere}.lyric-vocalist-group[style]{padding-left:calc(var(--bars) * 7px + 9px)}.vocalist-bars{position:absolute;left:0;top:0;bottom:0;display:flex;gap:3px}.vocalist-bars i{display:block;width:4px;border-radius:2px;background:var(--vocalist-colour)}.vocalist-label{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}


.release-layout .official-tracks{margin-bottom:16px}

/* Edition pills: the standard plain tag, in a row under the edition title. */
.edition-pills{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}


/* Regional variations: the group is a plain heading; each variation is a card (red edge when open) so the levels read differently. */

/* Edition formats: tags with a toggle that opens variants and dates. */
.format-detail{margin:0 0 10px}.format-detail>summary{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;cursor:pointer;list-style:none}.format-detail>summary::-webkit-details-marker{display:none}
.format-detail .edition-pills{margin:0}
/* Format and territory tags of one edition share a single wrapped row instead of stacking. */
.edition-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 10px}
.edition-meta>.edition-pills{display:contents}
.edition-meta>.format-detail{flex:0 1 auto}
.release-layout .prose h3.edition-title+.edition-meta{margin-top:0}
.format-more{color:var(--mustard);font-size:14px;font-weight:600}.format-more::after{content:' \25BE'}.format-detail[open] .format-more::after{content:' \25B4'}
.format-detail[open]>summary{margin-bottom:8px}
.format-table{border:1px solid var(--line);border-radius:var(--radius);font-size:15px}.format-table>*+*{border-top:1px solid var(--line)}
.format-row{display:flex;justify-content:space-between;gap:16px;padding:7px 14px}.format-group{padding-bottom:5px}.format-base{padding:7px 14px 2px;font-weight:600}.format-row.format-variant{padding:3px 14px 3px 28px}
.format-date{color:var(--stone);font-size:14px}.format-row .format-date{white-space:nowrap}
.release-format-list .format-date{margin-left:6px}

.gig-page .official-tracks .setlist-annotations{display:block;margin-top:3px;color:var(--stone);font:13px/1.4 'Josefin Sans',sans-serif}
.gig-page .official-tracks .setlist-annotations:empty{display:none}
.gig-page .official-tracks small.cover-credit{display:inline;margin:0}
/* Browsers without light-dark() (Safari before 17.5, Chrome before 123, Firefox before 120) get the same palette here,
   including the parts that are always dark. Keep in step with the light-dark() values above. */
@supports not (color:light-dark(#000,#fff)){.vc-blue{--vocalist-colour:#2a6fc4}.vc-rose{--vocalist-colour:#c23f7c}.vc-teal{--vocalist-colour:#13796d}.vc-amber{--vocalist-colour:#996200}.vc-violet{--vocalist-colour:#7448bd}.vc-green{--vocalist-colour:#3c7a28}.vc-coral{--vocalist-colour:#c4491f}.vc-slate{--vocalist-colour:#5f6b78}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .vc-blue{--vocalist-colour:#5aa2f0}:root:not([data-theme=light]) .vc-rose{--vocalist-colour:#f07aa8}:root:not([data-theme=light]) .vc-teal{--vocalist-colour:#3cc0ae}:root:not([data-theme=light]) .vc-amber{--vocalist-colour:#e8ac2c}:root:not([data-theme=light]) .vc-violet{--vocalist-colour:#a98af0}:root:not([data-theme=light]) .vc-green{--vocalist-colour:#7cc464}:root:not([data-theme=light]) .vc-coral{--vocalist-colour:#f08560}:root:not([data-theme=light]) .vc-slate{--vocalist-colour:#9aa6b2}}:root[data-theme=dark] .vc-blue{--vocalist-colour:#5aa2f0}:root[data-theme=dark] .vc-rose{--vocalist-colour:#f07aa8}:root[data-theme=dark] .vc-teal{--vocalist-colour:#3cc0ae}:root[data-theme=dark] .vc-amber{--vocalist-colour:#e8ac2c}:root[data-theme=dark] .vc-violet{--vocalist-colour:#a98af0}:root[data-theme=dark] .vc-green{--vocalist-colour:#7cc464}:root[data-theme=dark] .vc-coral{--vocalist-colour:#f08560}:root[data-theme=dark] .vc-slate{--vocalist-colour:#9aa6b2}}
