/* A small disclosure beneath each portrait; the existing 2 + 3 layout stays intact. */
.pg-member img { transition: transform .25s ease, filter .25s ease; }
.pg-member-photo-toggle { position:absolute; inset:0; width:100%; height:100%; border:0; padding:0; background:transparent; cursor:pointer; }
.pg-member-photo-toggle:focus-visible { outline:3px solid var(--support); outline-offset:4px; }
.pg-member .pg-member-bio { margin-top:12px; border-top:1px solid var(--line); }
.pg-member-bio summary { display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:44px; padding:8px 0; list-style:none; cursor:pointer; font:700 15px var(--label); letter-spacing:.04em; color:var(--paper); text-transform:uppercase; }
.pg-member-bio summary::-webkit-details-marker { display:none; }
.pg-member-bio summary::after { content:'+'; font:400 23px var(--body); color:var(--accent); }
.pg-member-bio[open] summary::after { content:'−'; }
.pg-member-bio summary:focus-visible { outline:2px solid var(--support); outline-offset:3px; }
.pg-band-grid .pg-member-bio p { font:400 15px/1.55 var(--body); color:var(--paper); text-transform:none; letter-spacing:normal; margin:0 0 16px; }
.pg-member:has(.pg-member-bio[open]) img { filter:saturate(1); }
.pg-band-bio-panel { position:relative; margin-top:28px; border-left:3px solid var(--accent); background:#ffffff06; padding:22px 24px; }
.pg-band-bio-panel[hidden] { display:none; }
.pg-band-bio-panel h3 { padding-right:75px; font-size:28px; text-transform:uppercase; margin-bottom:12px; }
.pg-band-bio-panel button { position:absolute; top:14px; right:20px; padding:10px 0; border:0; background:none; color:var(--paper); font:700 14px var(--label); text-decoration:underline; text-underline-offset:4px; min-height:44px; }
.pg-band-bio-panel p { font:400 16px/1.55 var(--body); color:var(--paper); margin:0; }
@media(max-width:900px) { .js .pg-member-bio>p { display:none; } }
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
  .pg-member:has(.pg-member-bio):hover img { transform:scale(1.025); filter:saturate(1); }
}
@media(max-width:600px) {
  .pg-band-grid .pg-member-bio p { font-size:13px; line-height:1.5; }
  .pg-member-bio summary { font-size:13px; }
}
@media(prefers-reduced-motion:reduce) { .pg-member img { transition:none; } }
