
.bio-preview-label{font:700 11px/1.5 "Courier New",monospace;letter-spacing:.1em;color:var(--concrete);margin-bottom:35px}
.bio-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:8%;align-items:start}
.bio-portrait-column .eyebrow{margin-bottom:12px}
.bio-portrait-column .about-name{margin-bottom:28px}
.bio-portrait-column .about-photo{width:100%;margin-bottom:24px}
.bio-portrait-column .brand-loop{margin:22px 0 26px;max-width:none}
.bio-prose{margin:0;padding-top:26px}
.bio-prose p{font-size:17px;line-height:1.65;hyphens:none;margin-bottom:22px;color:var(--concrete)}
.bio-prose p:first-child{color:var(--concrete)}
@media(max-width:780px){.bio-layout{grid-template-columns:1fr;gap:30px}.bio-portrait-column .about-photo{max-width:440px}.bio-portrait-column .brand-loop{max-width:440px}.bio-prose{padding:0}.bio-preview-label{margin-bottom:24px}}

.hero-copy{container-type:inline-size;min-width:0}#hero-title{font-size:min(104px,12cqw)}#hero-title span{display:block;white-space:nowrap}

.about-name .name-degree{display:inline-block;font-size:inherit;letter-spacing:inherit;white-space:nowrap}

.upcoming-shows{margin-top:32px;padding-top:25px;border-top:1px solid var(--line)}
.upcoming-shows h3{font-size:23px;margin:9px 0 20px}.show-heading{display:flex;gap:16px;align-items:center}.show-date{flex:none;display:flex;flex-direction:column;align-items:center;width:58px;padding:7px 0;background:var(--paper);color:var(--night);line-height:1}.show-date span{font:700 11px/1.5 "Courier New",monospace;letter-spacing:.12em}.show-date strong{font-size:29px;line-height:1.15}.show-heading h4{font-size:19px;line-height:1.2;margin:0 0 6px}.show-meta{font-size:12px;line-height:1.6;color:var(--concrete)}.show-flyer{display:block;width:100%;max-width:240px;margin:20px auto}.show-flyer img{display:block;width:100%;height:auto}.show-links{display:flex;flex-wrap:wrap;gap:12px 20px}.show-links .text-link{font-size:13px}.show-card+.show-card{margin-top:26px;padding-top:26px;border-top:1px solid var(--line)}

.show-flyer-choices{display:flex;justify-content:center;gap:10px;margin:-6px 0 20px}.show-flyer-choice{padding:3px;border:1px solid var(--line);background:transparent;width:52px}.show-flyer-choice[aria-pressed="true"]{border-color:var(--signal)}.show-flyer-choice img{width:100%;height:auto;display:block}
/* A compact, accessible gig calendar and uncropped poster carousel. */
.gig-calendar{margin-bottom:25px;padding:14px;border:1px solid var(--line);background:#101111}
.calendar-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.calendar-month{font-size:17px;margin:0;text-transform:uppercase;letter-spacing:.03em}
.calendar-arrow,.poster-pause{background:transparent;color:var(--paper);border:1px solid var(--line);cursor:pointer}.calendar-arrow{width:36px;height:36px;font-size:25px;line-height:1}.calendar-arrow:hover,.poster-pause:hover{border-color:var(--signal)}
.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}.weekday{font:700 11px/24px "Courier New",monospace;color:var(--concrete)}
.calendar-day{display:flex;align-items:center;justify-content:center;height:33px;font:14px/1 Arial,sans-serif;color:var(--concrete);border:1px solid transparent}.calendar-day.is-today{border-color:#737575}.calendar-day.has-show{background:var(--signal);color:#050505;cursor:pointer;font-weight:700;position:relative}.calendar-day[aria-pressed="true"]{outline:2px solid var(--paper);outline-offset:1px}.calendar-legend{margin-top:12px;color:var(--concrete);font-size:11px}.calendar-legend::first-letter{color:var(--signal)}
.show-gallery{margin:18px 0}.show-gallery .show-flyer{max-width:280px;margin:0 auto 10px}.show-flyer img{aspect-ratio:4/5;object-fit:contain}.poster-caption{text-align:center;font-size:11px;line-height:1.5;color:var(--concrete)}
.poster-controls{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:12px}.poster-controls .show-flyer-choices{margin:0;gap:7px}.poster-controls .show-flyer-choice{width:34px;padding:2px}.poster-pause{padding:8px;font-size:11px;min-height:38px}.calendar-subscribe{border-top:1px solid var(--line);margin-top:20px;padding-top:16px}.calendar-subscribe .text-link{font-size:12px}.show-empty,.show-status{font-size:14px;color:var(--concrete);line-height:1.6}.upcoming-shows button:focus-visible,.upcoming-shows a:focus-visible{outline:2px solid var(--signal);outline-offset:4px}

.footer-connect{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:32px 0;border-top:1px solid var(--line)}
.footer-connect .brand-loop{flex:0 1 360px;width:360px;max-width:100%;margin:0}
.footer-connect .actions{flex:1;justify-content:flex-end;align-items:center;margin:0;gap:28px}
@media(max-width:620px){.footer-connect{flex-direction:column;gap:24px}.footer-connect .brand-loop{flex:none;width:100%;max-width:360px}.footer-connect .actions{flex:none;width:100%;justify-content:center;gap:20px}}
