@font-face{font-family:"Heros";src:url(/assets/fonts/heros-bold.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Inter";src:url(/assets/fonts/inter-light.woff2) format("woff2");font-weight:300;font-display:swap}

:root{--ink:#0B0B0B;--pink:#C8235F;--grey:#5E5E5E;--body:#3D3D3D;--line:#E4E2DC;--paper:#F4F3F0;--pad:clamp(20px,4vw,56px);--sans:"Heros","Helvetica Neue",Helvetica,Arial,sans-serif;--light:"Inter","Helvetica Neue",Helvetica,Arial,sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--sans);font-weight:700;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
img{max-width:100%;height:auto;display:block}
a{color:var(--ink)}
a:hover{color:var(--pink)}
:focus-visible{outline:2px solid var(--pink);outline-offset:3px}
.p{color:var(--pink)}
.skip{position:absolute;left:-9999px}
.skip:focus{left:16px;top:16px;background:#fff;padding:12px 16px;z-index:10}

.wrap{max-width:1328px;margin:0 auto;padding:0 var(--pad)}

/* header */
.site-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 40px;padding:18px var(--pad)}
.logo{font-size:28px;letter-spacing:-.035em;text-decoration:none;color:var(--ink);padding:8px 0}
.site-head ul{display:flex;flex-wrap:wrap;gap:0 28px;list-style:none;margin:0;padding:0}
.site-head nav a{display:inline-block;padding:12px 0;text-decoration:none;font-size:17px;letter-spacing:-.01em}
.site-head nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:2px}
.site-head nav a.ig{color:var(--grey)}

/* type */
.display{margin:0;font-size:clamp(56px,10vw,156px);letter-spacing:-.045em;line-height:.92}
.h2{margin:0;font-size:clamp(34px,4.4vw,60px);letter-spacing:-.035em;line-height:1.02}
.lead{margin:18px 0 0;max-width:42em;font-family:var(--light);font-weight:300;font-size:clamp(18px,1.8vw,22px);line-height:1.45;color:var(--body)}
.display + .lead{margin-top:clamp(28px,3vw,44px)}
.eyebrow{margin:0;font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:var(--grey)}
.small{font-family:var(--light);font-weight:300;font-size:16px;line-height:1.5;color:var(--grey)}

/* sections */
.block{padding:clamp(48px,7vw,96px) 0}
.block + .block{padding-top:0}
.paper{background:var(--paper)}
.rule{border-top:1px solid var(--line)}
.row-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 32px;margin-bottom:28px}
.row-head a{font-size:17px;padding:12px 0}
.page-top{padding-top:clamp(32px,5vw,80px)}

/* home */
.hero img{width:100%;height:auto;max-height:88vh;aspect-ratio:3/2;object-fit:cover;object-position:center 72%}
.intro{padding-top:clamp(28px,4vw,52px)}
.next{display:flex;flex-wrap:wrap;gap:16px 64px;align-items:baseline}
.next .eyebrow{flex:0 0 200px}
.next > div{flex:999 1 460px;min-width:0}
.next .lead{margin-top:12px}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:16px}
.gallery img{width:100%;aspect-ratio:3/2;object-fit:cover}
.gallery + .small{margin-top:16px}
.members{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:24px 20px}
.members a{text-decoration:none}
.members img{width:100%;aspect-ratio:4/5;object-fit:cover}
.members .name{display:block;margin-top:10px;font-size:19px;letter-spacing:-.02em}
.members .role{display:block;font-family:var(--light);font-weight:300;font-size:15px;color:var(--grey)}

/* join */
.join{display:flex;flex-wrap:wrap;gap:32px 64px;align-items:flex-end}
.join > div{flex:1 1 420px;min-width:0}
.join .display{font-size:clamp(44px,6vw,88px)}
.join form{flex:1 1 420px;min-width:0;display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end}
.field{display:flex;flex-direction:column;gap:8px;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--grey)}
.field.email{flex:2 1 220px}
.field.zip{flex:1 1 110px}
.field input{font:300 19px/1.2 var(--light);letter-spacing:0;text-transform:none;color:var(--ink);padding:14px 0;border:0;border-bottom:2px solid var(--ink);border-radius:0;background:transparent;width:100%}
.field input::placeholder{color:#8A8A8A}
.hp{position:absolute;left:-9999px}
.form-note{flex:1 0 100%;margin:0;min-height:1.5em}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 30px;border:0;border-radius:0;background:var(--ink);color:#fff;font:700 18px var(--sans);letter-spacing:-.01em;text-decoration:none;cursor:pointer}
.btn:hover{background:var(--pink);color:#fff}
.btn[disabled]{opacity:.6;cursor:wait}

/* shows */
.list{border-top:2px solid var(--ink)}
.show{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:6px 32px;align-items:baseline;padding:26px 0;border-bottom:1px solid var(--line)}
.show p{margin:0}
.show .big{font-size:26px;letter-spacing:-.03em}
.show .light{font-family:var(--light);font-weight:300;font-size:20px}
.none{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px 40px;padding:30px 0;border-bottom:1px solid var(--line)}
.none p{margin:0;font-size:clamp(26px,3.2vw,42px);letter-spacing:-.035em;line-height:1.08}

/* band */
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:64px 32px}
.cards img{width:100%;aspect-ratio:3/2;object-fit:cover}
.cards h2{margin:18px 0 0;font-size:40px;letter-spacing:-.04em;line-height:1}
.cards .eyebrow{margin-top:8px}
.cards p.bio{margin:14px 0 0;font-family:var(--light);font-weight:300;font-size:18px;line-height:1.5}

/* booking */
.book-top{display:flex;flex-wrap:wrap;gap:36px 64px;align-items:flex-end}
.book-top > div:first-child{flex:999 1 560px;min-width:0}
.book-cta{flex:1 1 280px;display:flex;flex-direction:column;gap:10px;text-align:center}
.book-cta .btn{min-height:60px;font-size:19px}
.facts{margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));border-top:2px solid var(--ink)}
.facts div{padding:22px 24px 22px 0;border-bottom:1px solid var(--line)}
.facts dt{font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--grey)}
.facts dd{margin:8px 0 0;font-size:24px;letter-spacing:-.03em;line-height:1.15}
.lineup{margin:0;padding:0;list-style:none;border-top:2px solid var(--ink);font-size:20px}
.lineup li{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}
.lineup span{font-family:var(--light);font-weight:300;text-align:right}
.press{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:28px}
.press figure{margin:0}
.press img{width:100%;aspect-ratio:3/2;object-fit:cover}
.press figcaption{display:flex;justify-content:space-between;gap:12px;margin-top:10px}
.press figcaption a{font-family:var(--light);font-weight:300;font-size:16px;padding:4px 0}

/* video */
.video{margin:0}
.yt{position:relative;display:block;aspect-ratio:16/9;background:#000;overflow:hidden}
.yt img{width:100%;height:100%;object-fit:cover}
.yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.play{position:absolute;right:clamp(16px,2.5vw,32px);bottom:clamp(16px,2.5vw,32px);width:88px;height:88px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;transition:transform .15s,background-color .15s}
.play svg{margin-left:6px;fill:var(--ink)}
.yt:hover .play{background:var(--pink);transform:scale(1.05)}
.yt:hover .play svg{fill:#fff}
.video figcaption{margin-top:14px;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px}
.vt{font-size:clamp(24px,2.6vw,34px);letter-spacing:-.035em}
.vgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:40px 28px}
.vgrid .play{width:60px;height:60px}
@media (max-width:600px){.play{width:56px;height:56px}.play svg{width:20px;height:22px;margin-left:4px}}

/* footer */
.site-foot{background:var(--ink);color:#fff}
.site-foot .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px;padding-top:clamp(48px,6vw,80px);padding-bottom:40px}
.site-foot .big{margin:0;font-size:clamp(40px,6vw,84px);letter-spacing:-.045em;line-height:.95}
.site-foot ul{list-style:none;margin:0;padding:0;font-family:var(--light);font-weight:300;font-size:17px}
.site-foot a{color:#fff;display:inline-block;padding:6px 0}
.site-foot a:hover{color:#F07AA6}
.site-foot .credit{flex:1 0 100%;margin:8px 0 0;font-family:var(--light);font-weight:300;font-size:14px;color:#A8A8A8}
.site-foot .credit a{color:#A8A8A8;padding:0}

@media (max-width:600px){
  .site-head{padding-top:12px;padding-bottom:8px}
  .site-head ul{gap:0 16px}
  .site-head nav a{font-size:16px}
  .next .eyebrow{flex-basis:100%}
}
@media (max-width:400px){.site-head ul{gap:0 12px}.site-head nav a{font-size:15px}}
@media (prefers-reduced-motion:no-preference){a,.btn{transition:color .15s,background-color .15s}}
