:root{--ink:#130c20;--paper:#f4eee5;--hot:#ff427f;--coral:#ff744d;--cyan:#47e3e7;--violet:#622e8f;--white:#fff;--display:'Barlow Condensed',sans-serif;--body:'DM Sans',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6}img{display:block;max-width:100%;object-fit:cover}a{color:inherit}.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:fixed;z-index:100;top:-4rem;left:1rem;background:#fff;padding:.7rem 1rem}.skip-link:focus{top:1rem}.site-header{height:70px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;position:absolute;z-index:10;width:100%;color:#fff;border-bottom:1px solid #ffffff45}.wordmark{display:flex;align-items:center;gap:12px;text-decoration:none;font:800 1.6rem/1 var(--display);letter-spacing:.12em}.wordmark i{display:block;width:42px;height:1px;background:var(--cyan);box-shadow:0 0 8px var(--cyan)}nav{display:flex;gap:2rem;align-items:center}nav a{font:600 .84rem var(--body);text-transform:uppercase;letter-spacing:.12em;text-decoration:none}nav a:hover{color:var(--cyan)}.nav-toggle{display:none;background:none;border:0;padding:.5rem}.nav-toggle span:not(.sr-only){display:block;width:26px;height:2px;background:#fff;margin:5px}.hero{min-height:780px;height:100svh;position:relative;display:flex;align-items:center;overflow:hidden;color:#fff;background:var(--ink)}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#130c20e6 0%,#130c2090 42%,#130c2010 72%),linear-gradient(0deg,#130c20cc 0%,transparent 40%)}.hero-content{position:relative;width:min(1200px,92%);margin:60px auto 0}.eyebrow{text-transform:uppercase;font-weight:700;font-size:.76rem;letter-spacing:.24em;margin:0 0 1rem}.hero .eyebrow{color:var(--cyan)}h1,h2{font-family:var(--display);text-transform:uppercase;margin:0;line-height:.85;letter-spacing:-.035em}h1{font-size:clamp(5rem,13.5vw,12rem);font-weight:500}h1 span{color:var(--hot);text-shadow:0 0 25px #ff427f66}.hero-tagline{font:600 clamp(1.15rem,2vw,1.65rem)/1.25 var(--body);margin:1.3rem 0 2rem}.button-row{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:0 1.5rem;text-decoration:none;text-transform:uppercase;font-weight:800;font-size:.78rem;letter-spacing:.13em;border:1px solid transparent;transition:.2s transform,.2s background}.button:hover{transform:translateY(-2px)}.button-hot{background:var(--hot);color:#fff;box-shadow:5px 5px 0 var(--cyan)}.button-hot:hover{background:#ff6795}.button-ghost{border-color:#ffffff90;background:#130c2045}.button-ghost:hover{border-color:var(--cyan)}.scroll-cue{position:absolute;right:4vw;bottom:2.5rem;text-decoration:none;text-transform:uppercase;font-weight:700;font-size:.7rem;letter-spacing:.2em}.scroll-cue span{color:var(--cyan);font-size:1.4rem;margin-left:.6rem}.section{padding:7rem max(5vw,calc((100vw - 1200px)/2))}.section-kicker{display:flex;align-items:center;gap:15px;font-size:.68rem;text-transform:uppercase;font-weight:800;letter-spacing:.2em;margin-bottom:4rem}.section-kicker span{border:1px solid currentColor;border-radius:50%;width:34px;height:34px;display:grid;place-items:center}.intro-grid,.section-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:start}.coral{color:#d64e31}.cyan{color:var(--cyan)}h2{font-size:clamp(3.7rem,7.5vw,7.5rem)}.intro-copy{font-size:clamp(1.05rem,1.6vw,1.3rem)}.intro-copy p:first-child{font-weight:600}.stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:5rem;border-top:1px solid #261d3133;border-bottom:1px solid #261d3133}.stats div{padding:2rem;border-right:1px solid #261d3133}.stats div:last-child{border:0}.stats strong,.stats span{display:block}.stats strong{font:700 clamp(2.3rem,4vw,4rem) var(--display);text-transform:uppercase}.stats span{text-transform:uppercase;letter-spacing:.12em;font-size:.68rem}.photo-break{height:min(78vw,850px);min-height:520px;position:relative;background:#000}.photo-break img{width:100%;height:100%;filter:saturate(1.05)}.photo-break:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#130c20b3,transparent 60%)}.photo-break p{position:absolute;z-index:1;bottom:4vw;left:max(5vw,calc((100vw - 1200px)/2));color:#fff;font:500 clamp(2rem,4vw,4rem)/1.05 var(--display);text-transform:uppercase}.photo-break em{color:var(--cyan);font-style:normal}.shows{background:var(--ink);color:#fff}.light{color:#eee}.section-heading{align-items:end;margin-bottom:4rem}.section-heading>p{color:#bbb;margin:0}.shows-list{border-top:1px solid #ffffff30}.show-card{display:grid;grid-template-columns:150px 1fr auto;gap:2rem;align-items:center;border-bottom:1px solid #ffffff30;padding:1.6rem 0}.show-card time{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:12px;text-transform:uppercase}.show-card time b{color:var(--hot);letter-spacing:.12em}.show-card time strong{font:700 4rem/1 var(--display);grid-row:1/3;grid-column:2}.show-card time span{font-size:.65rem;letter-spacing:.12em}.show-info h3,.no-shows h3{font:600 1.8rem var(--display);text-transform:uppercase;margin:0}.show-info p{margin:0;color:#bbb}.show-info i{font-style:normal;color:var(--hot);margin:0 .3rem}.button-small{min-height:44px;border-color:var(--cyan);color:var(--cyan)}.show-soon{text-transform:uppercase;font-size:.7rem;letter-spacing:.15em;color:#999}.no-shows{padding:3rem 0}.hootenanny{display:block}.hoot-copy{max-width:900px;margin:0 auto}.hoot-copy .section-kicker{margin-bottom:3rem}.hoot-copy h2{font-size:clamp(3.5rem,6vw,6rem)}.big-copy{font-weight:700;font-size:1.3rem;line-height:1.35}.text-link{text-transform:uppercase;text-decoration:none;font-weight:800;font-size:.76rem;letter-spacing:.14em;border-bottom:2px solid var(--hot);padding-bottom:.4rem}.text-link span{color:var(--hot);margin-left:.5rem}.gallery{background:#241332;display:grid;grid-template-columns:1.2fr .9fr 1.1fr;grid-template-rows:330px 390px;gap:12px;padding:12px}.gallery img{width:100%;height:100%}.gallery-title{color:#fff;padding:4rem;display:flex;flex-direction:column;justify-content:end}.gallery-title h2{font-size:clamp(3rem,5vw,5.5rem)}.g1{grid-column:2/4}.g2{grid-row:2;grid-column:1}.g3{grid-row:2;grid-column:2}.g4{grid-row:2;grid-column:3}.band-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem 1.2rem}.member{position:relative}.member img{width:100%;aspect-ratio:4/5;filter:saturate(.85);transition:.25s}.member:hover img{filter:saturate(1.2)}.member div{padding:1rem 0}.member h3{font:700 1.65rem/1 var(--display);text-transform:uppercase;margin:0}.member p{margin:.3rem 0;color:#61576a;font-size:.82rem;text-transform:uppercase;letter-spacing:.1em}.booking{background:linear-gradient(125deg,#2d1452,#a02062 62%,#e25a49);color:#fff;text-align:center;position:relative;overflow:hidden}.booking:before{content:"";position:absolute;width:450px;height:450px;border:1px solid #47e3e766;border-radius:50%;top:-260px;left:-80px;box-shadow:0 0 0 55px #47e3e710,0 0 0 110px #47e3e710}.booking-inner{max-width:900px;margin:auto;position:relative}.booking h2{font-size:clamp(4rem,8vw,8rem)}.booking-inner>p:not(.eyebrow){font-size:1.2rem;max-width:670px;margin:2rem auto}.booking-contact{margin:2.5rem auto;display:flex;flex-direction:column}.booking-contact span{text-transform:uppercase;letter-spacing:.2em;font-size:.65rem}.booking-contact strong{font:600 1.7rem var(--display);text-transform:uppercase}.booking-contact a{font:600 clamp(2.5rem,5vw,5rem) var(--display);text-decoration:none;color:var(--cyan)}footer{background:#0d0912;color:#fff;padding:4rem 5vw 2rem;display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:end}.footer-logo{font:600 clamp(2.8rem,6vw,6rem)/1 var(--display);color:var(--hot);text-decoration:none;grid-column:1/3}.footer-links{display:flex;gap:1.5rem;justify-content:end}.footer-links a{text-decoration:none;text-transform:uppercase;font-size:.7rem;letter-spacing:.14em}footer p,footer small{color:#9e96a7}footer small{text-align:right}
@media(max-width:800px){.site-header{height:64px}.nav-toggle{display:block;position:relative;z-index:2}nav{display:none;position:absolute;inset:0 0 auto 0;background:#130c20;padding:5.5rem 6vw 2rem;flex-direction:column;align-items:flex-start}nav.open{display:flex}.hero{min-height:700px}.hero-shade{background:linear-gradient(0deg,#130c20e8 0%,#130c2045 100%)}.hero>img{object-position:63% center}.hero-content{margin-top:130px}.hero-tagline{margin-top:2rem}.scroll-cue{display:none}.section{padding:5rem 6vw}.section-kicker{margin-bottom:2.5rem}.intro-grid,.section-heading{grid-template-columns:1fr;gap:2rem}.stats{grid-template-columns:1fr}.stats div{border-right:0;border-bottom:1px solid #261d3133;padding:1.3rem 0}.photo-break{min-height:620px}.photo-break img{object-position:55% center}.show-card{grid-template-columns:95px 1fr;gap:1rem}.show-card time strong{font-size:3.2rem}.show-card .button,.show-soon{grid-column:2;justify-self:start}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:auto 290px 260px}.gallery-title{grid-column:1/3;padding:3rem 1.5rem}.g1{grid-column:1/3}.g2{grid-column:1;grid-row:3}.g3{grid-column:2;grid-row:3}.g4{display:none}.band-grid{grid-template-columns:1fr 1fr}.booking:before{width:300px;height:300px}.footer-logo{grid-column:auto}.footer-links{justify-content:start;grid-column:1/3;grid-row:3}.footer-logo,footer p{grid-column:1/3}footer small{text-align:left}}
@media(max-width:470px){h1{font-size:4.5rem}.hero-content{width:88%}.button-row .button{width:100%}.photo-break p{left:6vw}.band-grid{gap:1rem .65rem}.member h3{font-size:1.25rem}.gallery{grid-template-rows:auto 220px 200px}footer{grid-template-columns:1fr}.footer-logo,footer p,.footer-links,footer small{grid-column:1}.footer-links{flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Full-width, uncropped brand banner */
.hero{display:block;height:auto;min-height:430px;aspect-ratio:2048/853}
.hero>img{object-fit:contain;object-position:center}
.hero-shade{background:linear-gradient(0deg,#130c20a8 0%,transparent 38%)}
.hero-content{position:absolute;width:auto;margin:0;left:max(4vw,calc((100vw - 1200px)/2));bottom:2.6rem;z-index:1}

@media(max-width:800px){
  .hero{height:auto;min-height:0;aspect-ratio:auto;padding-top:41.65%;padding-bottom:82px}
  .hero>img{height:auto;aspect-ratio:2048/853;object-fit:contain;object-position:center top}
  .hero-shade{background:linear-gradient(0deg,#130c20 0 82px,transparent 145px)}
  .hero-content{width:auto;margin:0;left:6vw;right:6vw;bottom:20px}
}
@media(max-width:470px){
  .hero{padding-bottom:144px}
  .hero-shade{background:linear-gradient(0deg,#130c20 0 144px,transparent 195px)}
  .hero-content{width:auto;bottom:16px}
}
