﻿@import url('artist-pages-base.css?v=shop-20260730h');
.album-player-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;background:transparent;border:0}.album-player-card{padding:1rem;background:#171715;border:1px solid #393732}.album-player-card iframe{display:block;width:100%;height:352px;border:0;border-radius:12px}.album-player-meta{display:flex;justify-content:space-between;gap:1rem;align-items:start;padding:.9rem .2rem .2rem}.album-player-meta h3{margin:0;font-size:1.15rem;line-height:1.15;text-transform:none}.album-player-meta span{flex:none;color:var(--artist);font-size:.68rem;font-weight:900;letter-spacing:.08em}.album-player-card:hover{border-color:var(--artist)}
@media(max-width:900px){.album-player-grid{grid-template-columns:1fr}}

.album-player-card.has-physical{grid-column:1/-1;border-color:var(--artist);padding:1.25rem}
.physical-edition{margin-top:1.25rem;padding:clamp(1.25rem,3vw,2.5rem);display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(1.5rem,4vw,4rem);background:#eee8dc;color:#111}
.physical-gallery-main{width:100%;aspect-ratio:4/3;object-fit:contain;background:#fff;border:1px solid #c8c0b3}
.physical-thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:.45rem;margin-top:.6rem}
.physical-thumb{padding:0;border:2px solid transparent;background:#fff;cursor:pointer}.physical-thumb.active,.physical-thumb:hover{border-color:#e65b2d}.physical-thumb img{display:block;width:100%;aspect-ratio:1;object-fit:contain}
.physical-copy{display:flex;flex-direction:column;justify-content:center}.physical-kicker{margin:0 0 .75rem;color:#b74521;font-size:.68rem;font-weight:950;letter-spacing:.15em;text-transform:uppercase}.physical-copy h4{margin:0;font:700 clamp(2.2rem,4vw,4.5rem)/.95 Arial,sans-serif;letter-spacing:-.05em}.physical-description{margin:1.25rem 0;color:#514b43;line-height:1.65}.physical-details{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}.physical-details span{padding:.5rem .7rem;border:1px solid #aaa095;border-radius:999px;font-size:.7rem;font-weight:800;text-transform:uppercase}.physical-actions{display:flex;gap:.75rem;flex-wrap:wrap}.physical-buy,.physical-more{padding:1rem 1.2rem;text-decoration:none;font-size:.72rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.physical-buy{color:#fff;background:#111}.physical-buy:hover{background:#d5522a}.physical-more{color:#111;border:1px solid #111}.physical-more:hover{color:#fff;background:#111}
@media(max-width:800px){.physical-edition{grid-template-columns:1fr}.physical-thumbs{grid-template-columns:repeat(3,1fr)}}


.physical-gallery-fixed{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.physical-gallery-fixed figure{margin:0;padding:.6rem;background:#fff;border:1px solid #c8c0b3}
.physical-gallery-fixed img{display:block;width:100%;aspect-ratio:4/3;object-fit:contain;background:#fff}
.physical-gallery-fixed figcaption{padding:.55rem .2rem .1rem;color:#514b43;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-align:center;text-transform:uppercase}
@media(max-width:600px){.physical-gallery-fixed{grid-template-columns:1fr}}


/* Compact, familiar artist-page scale */
main{max-width:1440px;margin:0 auto}
.band-hero{min-height:clamp(360px,52vh,560px);padding:3.5rem clamp(1.25rem,4vw,4rem)}
.band-hero-image{background-position:center center}
body[data-artist="irish-pub-song"] .band-hero-image{background-position:center 24%}
.band-hero h1{max-width:14ch;font-size:clamp(3.25rem,7vw,7rem);line-height:.92}
.band-hero h1{font-size:clamp(2.9rem,6vw,6.2rem);-webkit-text-stroke:0;text-shadow:none}
body[data-artist="chant-collective"] .band-hero-image{background-size:cover;background-color:#080808}
.band-summary{grid-template-columns:220px minmax(0,1fr);gap:clamp(2rem,4vw,4rem);padding:clamp(2.5rem,4vw,4rem)}
.band-summary p{font-size:clamp(1.08rem,1.6vw,1.45rem);line-height:1.55}
.listen-section{padding:clamp(3rem,5vw,5rem) clamp(1.25rem,4vw,4rem);grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);gap:clamp(2rem,5vw,5rem)}
.listen-section h2,.releases h2{font-size:clamp(2.5rem,5vw,5rem);line-height:.95}
.spotify-wrap{top:90px}
.spotify-wrap iframe{min-height:300px}
.releases{padding:0 clamp(1.25rem,4vw,4rem) clamp(4rem,6vw,6rem)}
.release-heading{margin-bottom:2rem}
.album-player-grid{gap:1rem}
.album-player-card{padding:.8rem}
.album-player-card iframe{height:300px}
.album-player-card.has-physical{padding:1rem}
.physical-edition{padding:clamp(1rem,2vw,1.75rem);grid-template-columns:minmax(0,1fr) minmax(280px,.7fr);gap:clamp(1.5rem,3vw,3rem)}
.physical-gallery-fixed{gap:.65rem}
.physical-gallery-fixed figure{padding:.4rem}
.physical-copy h4{font-size:clamp(1.8rem,3vw,3.25rem);line-height:1}
.physical-description{margin:1rem 0;line-height:1.5}
.physical-details{gap:.5rem;margin-bottom:1rem}
@media(max-width:850px){.band-hero{min-height:380px}.band-summary,.listen-section{grid-template-columns:1fr}.album-player-card iframe{height:352px}.physical-edition{grid-template-columns:1fr}}
@media(max-width:600px){.band-hero{min-height:330px;padding:2rem 1.15rem}.band-hero h1{font-size:clamp(2.5rem,13vw,4.1rem)}.band-summary,.listen-section,.releases{padding-left:1.15rem;padding-right:1.15rem}.album-player-card iframe{height:300px}.physical-gallery-fixed{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Taller, narrower Spotify album players */
.album-player-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}
.album-player-card iframe{height:480px}
.album-player-card.has-physical>iframe{width:min(100%,480px);height:480px;margin:0 auto}
@media(max-width:1150px){.album-player-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.album-player-grid{grid-template-columns:1fr}.album-player-card iframe,.album-player-card.has-physical>iframe{height:440px}}

/* Physical album feature: player left, editorial write-up right */
.album-player-card.has-physical{display:grid;grid-template-columns:minmax(320px,480px) minmax(0,1fr);column-gap:clamp(2rem,4vw,4rem);align-items:start}
.album-player-card.has-physical>iframe{grid-column:1;grid-row:1;width:100%;margin:0}
.album-player-card.has-physical>.album-player-meta{grid-column:2;grid-row:1;display:block;align-self:center;padding:1rem 1rem 1rem 0}
.album-player-card.has-physical>.album-player-meta h3{font-size:clamp(2rem,3.5vw,3.75rem);line-height:1;margin-bottom:.75rem}
.album-player-card.has-physical>.album-player-meta span{display:inline-block;margin-bottom:1.25rem}
.release-writeup{max-width:650px;margin:0;color:#cfc8bc;font:clamp(1.05rem,1.4vw,1.3rem)/1.6 Arial,Helvetica,sans-serif}
.album-player-card.has-physical>.physical-edition{grid-column:1/-1}
@media(max-width:850px){.album-player-card.has-physical{grid-template-columns:1fr}.album-player-card.has-physical>iframe,.album-player-card.has-physical>.album-player-meta{grid-column:1;grid-row:auto}.album-player-card.has-physical>.album-player-meta{padding:1.25rem .25rem}}

/* Readable editorial copy and compact artist overview player */
.band-summary p{white-space:pre-line}
.spotify-wrap{width:min(100%,480px);justify-self:start}
.spotify-wrap iframe{width:100%;height:480px;min-height:480px}
.listen-section{grid-template-columns:minmax(180px,280px) minmax(320px,480px);justify-content:start}
@media(max-width:850px){.spotify-wrap{width:min(100%,480px)}.listen-section{grid-template-columns:1fr}.spotify-wrap iframe{height:440px;min-height:440px}}

/* Editorial descriptions for every release */
.album-player-meta:has(.release-writeup){display:block;align-items:initial}
.album-player-meta>.release-writeup{margin:1rem 0 .35rem;color:#bfb8ac;font:1rem/1.55 Arial,Helvetica,sans-serif}
.album-player-card:not(.has-physical) .album-player-meta>.release-writeup{font-size:.95rem;line-height:1.55}

/* Consistent label layout: player left, editorial right */
.album-player-grid{grid-template-columns:1fr;gap:1.25rem}
.album-player-card{display:grid;grid-template-columns:minmax(320px,480px) minmax(0,1fr);column-gap:clamp(2rem,4vw,4rem);align-items:start}
.album-player-card>iframe{grid-column:1;grid-row:1;width:100%;height:480px}
.album-player-card.is-single>iframe{height:352px}
.album-player-card>.album-player-meta{grid-column:2;grid-row:1;display:block;align-self:center;padding:1rem 1rem 1rem 0}
.album-player-card>.album-player-meta h3{font-size:clamp(1.8rem,3vw,3.25rem);line-height:1;margin-bottom:.75rem}
.album-player-card>.album-player-meta span{display:inline-block;margin-bottom:.9rem}
.album-player-card>.album-player-meta>.release-writeup{max-width:700px;margin:0;color:#cfc8bc;font:clamp(1rem,1.25vw,1.2rem)/1.6 Arial,Helvetica,sans-serif}
.album-player-card>.physical-edition{grid-column:1/-1}
@media(max-width:850px){.album-player-card{grid-template-columns:1fr}.album-player-card>iframe,.album-player-card>.album-player-meta{grid-column:1;grid-row:auto}.album-player-card>.album-player-meta{padding:1.25rem .25rem}.album-player-card>iframe{height:440px}.album-player-card.is-single>iframe{height:352px}}

/* Full album track lists need vertical room; keep editorial aligned at the top */
.album-player-card>.album-player-meta,.album-player-card.has-physical>.album-player-meta{align-self:start;padding-top:1rem}

/* Preserve paragraph breaks in album essays */
.album-player-meta>.release-writeup{white-space:pre-line}

/* Compact clickable discography for artists with large catalogs */
body[data-artist] .listen-section{display:none}
.release-cover-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
.release-cover-card{padding:1rem;display:block;color:#eee8dc;background:#171715;border:1px solid #393732;text-decoration:none;transition:.2s}
.release-cover-card:hover{border-color:var(--artist);transform:translateY(-4px)}
.release-cover-card img{display:block;width:100%;aspect-ratio:1;object-fit:contain;margin-bottom:1rem}
.release-cover-card span{color:var(--artist);font-size:.65rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.release-cover-card h3{margin:.65rem 0;font-size:clamp(1.45rem,2.2vw,2.25rem);line-height:1.05}
.release-cover-card b{color:#aaa49a;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}
@media(max-width:1000px){.release-cover-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.release-cover-grid{grid-template-columns:1fr}}
/* Separate full releases from singles */
.release-catalog{display:block;background:transparent;border:0}
.release-group+.release-group{margin-top:4rem;padding-top:3rem;border-top:1px solid #4a4740}
.release-group-title{margin:0 0 1.5rem;color:var(--cream);font-size:clamp(2rem,4vw,3.8rem);line-height:1;text-transform:uppercase}
.singles-group .release-group-title{color:var(--artist)}
.release-group-empty{margin:0;padding:1.5rem;color:var(--muted);background:#171715;border:1px solid #393732}


/* Main artist social links (Spotify / YouTube) shown under the band name. */
.social-links{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem}
.social-btn{display:inline-flex;align-items:center;gap:.55rem;padding:.6rem 1.15rem;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.05);color:var(--cream,#eee8dc);font:600 .95rem/1 Arial,Helvetica,sans-serif;text-decoration:none;transition:transform .15s ease,background .15s ease,border-color .15s ease}
.social-btn:hover{transform:translateY(-1px);background:rgba(255,255,255,.1)}
.social-btn svg{width:19px;height:19px;flex:none;display:block}
.social-spotify svg{color:#1DB954}
.social-spotify:hover{border-color:#1DB954}
.social-youtube svg{color:#FF0000}
.social-youtube:hover{border-color:#FF0000}
@media(max-width:600px){.social-links{gap:.5rem}.social-btn{padding:.55rem 1rem;font-size:.9rem}}

/* Text reflow: balanced headings, tidy paragraphs. */
h1,h2,h3{text-wrap:balance}
#band-bio,.release-writeup,p{text-wrap:pretty}

/* The CD add-to-cart control is a <button> reusing the .physical-buy look. */
button.physical-buy{border:0;cursor:pointer;font-family:inherit;line-height:1}
button.physical-buy:disabled{background:#8d887f;cursor:not-allowed}
.physical-stock{margin:-.75rem 0 1.25rem;color:#6b645b;font-size:.8rem}
.physical-stock.is-soldout{color:#b74521;font-weight:800}
.physical-actions{align-items:center}
