*{box-sizing:border-box;margin:0;padding:0}
body{background:#f2efe6;color:#111;font:16px/1.5 "Helvetica Neue",Arial,sans-serif}
a{color:inherit}
.wrap{max-width:1100px;margin:0 auto;padding:0 1.2rem}
header{background:#111;color:#f2efe6;padding:3rem 0 2rem;border-bottom:12px solid #ff3b1f}
.logo{font-weight:900;font-size:clamp(3rem,15vw,9rem);line-height:.85;letter-spacing:-.05em;text-transform:uppercase}
.logo span{color:#ff3b1f}
.tag{margin-top:1rem;font-size:.9rem;letter-spacing:.3em;text-transform:uppercase}
nav{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;margin-top:1.5rem;font-weight:700;text-transform:uppercase;font-size:.85rem}
section{padding:3rem 0;border-bottom:2px solid #111}
h2{font-size:.8rem;letter-spacing:.3em;text-transform:uppercase;margin-bottom:1.2rem}
.cat{color:#ff3b1f;font-weight:900}.upcoming .cat{color:#111}
.ethos{display:grid;gap:1rem}
.ethos div{border:3px solid #111;padding:1.2rem;font-size:1.8rem;font-weight:900;text-transform:uppercase}
.ethos p{font-size:1rem;font-weight:400;text-transform:none}
.ethos div:nth-child(2){background:#111;color:#f2efe6}
.ethos div:nth-child(3){background:#ff3b1f}
ul.artists{list-style:none;display:grid;gap:.5rem}
.artists li{font-size:clamp(1.6rem,6vw,3.2rem);font-weight:900;text-transform:uppercase;line-height:1;border-bottom:1px solid #111;padding:.4rem 0}
.artists small{display:block;font-size:.8rem;font-weight:400;text-transform:none;letter-spacing:.05em}
.upcoming{background:#ff3b1f}
.big{font-size:clamp(2rem,8vw,4.5rem);font-weight:900;line-height:.95;text-transform:uppercase}
.links{display:grid;gap:.5rem}
.links a{display:block;border:3px solid #111;padding:.8rem 1rem;font-weight:700;text-decoration:none;text-transform:uppercase}
.links a:hover{background:#111;color:#f2efe6}
form{display:flex;flex-direction:column;gap:.6rem;max-width:520px}
input,button{font:inherit;padding:.8rem;border:3px solid #111}
button{background:#111;color:#f2efe6;font-weight:900;text-transform:uppercase;cursor:pointer}
.todo{background:#ffe600;border:2px dashed #111;padding:.5rem;font-size:.85rem}
footer{padding:2rem 0;font-size:.85rem}
.doc{padding:2rem 0}.doc h1{font-size:2.5rem;font-weight:900;text-transform:uppercase;margin-bottom:1rem}.doc h3{margin-top:1.5rem}.doc p,.doc li{margin:.5rem 0;max-width:70ch}.doc ul{padding-left:1.2rem}
@media(min-width:800px){.ethos{grid-template-columns:repeat(3,1fr)}.links{grid-template-columns:repeat(3,1fr)}ul.artists{grid-template-columns:1fr 1fr;column-gap:2rem}}
.mark{height:120px;width:auto;margin-bottom:1rem;display:block;image-rendering:auto}@media(min-width:800px){.mark{height:200px;float:right}}
.upcoming .todo{display:inline-block;margin:.2rem 0 .4rem;padding:.1rem .4rem}

.tv{background:#111;color:#f2efe6;border-bottom:12px solid #ff3b1f}.tv .big span{color:#ff3b1f}
.lede{margin:.8rem 0 1.2rem;font-size:1.1rem}
.btns{display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:1.8rem}
.btn{background:#ff3b1f;color:#111;font-weight:900;text-transform:uppercase;text-decoration:none;padding:1rem 1.6rem;font-size:1.1rem;border:3px solid #ff3b1f}
.btn.alt{background:transparent;color:#f2efe6;border-color:#f2efe6}.btn:hover{background:#f2efe6;color:#111;border-color:#f2efe6}
.vids{display:grid;gap:1rem;grid-template-columns:1fr}
.vid{text-decoration:none;border:3px solid #f2efe6;display:block;background:#000}.vid:hover{border-color:#ff3b1f}
.vid img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.vid span{display:block;padding:.6rem .8rem;font-weight:700;font-size:.9rem;text-transform:uppercase}
@media(min-width:600px){.vids{grid-template-columns:1fr 1fr}}@media(min-width:900px){.vids{grid-template-columns:repeat(3,1fr)}}
.gigs{background:#ffe9d6}.gl{list-style:none;display:grid;gap:.6rem}
.gl li{border-left:8px solid #ff3b1f;padding:.4rem .8rem;background:#f2efe6}.gl b{display:block;font-weight:900;text-transform:uppercase;letter-spacing:.1em}
.call{margin-top:1.4rem;font-weight:900;font-size:1.2rem;text-transform:uppercase}
.soon{display:block;border:3px dashed #111;padding:.8rem 1rem;font-weight:700;text-transform:uppercase}

.fwh{margin:2rem 0 .8rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}
.fwall{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:1rem}
.fwall figure{margin:0;background:#111;padding:.4rem;box-shadow:3px 3px 0 #ff3b1f}
.fwall img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;object-position:top;transition:transform .2s}
.fwall a:hover img{transform:scale(1.03)}
.fwall figcaption{color:#eee;font-size:.75rem;line-height:1.3;padding:.4rem .1rem 0}
.fwall figcaption b{display:block;color:#fff}
