/* ---------- HERO / player ---------- */
.hero{position:relative;height:100svh;min-height:720px;overflow:hidden;isolation:isolate;color:#f6efe7}
.slide{position:absolute;inset:0;z-index:-3;opacity:0;transition:opacity 1.6s ease}
.slide.on{opacity:1}
.slide img{width:100%;height:100%;object-fit:cover;transform:scale(1.12);transition:transform 9s linear}
.slide.on img{transform:scale(1)}
.slide img.sl-new{object-position:78% 35%}
@media (max-width:720px){.slide img.sl-new{object-position:81% 30%}}
.hero::before{content:"";position:absolute;inset:0;z-index:-2;background:
  linear-gradient(90deg,rgba(13,10,9,.9) 0%,rgba(13,10,9,.55) 40%,rgba(13,10,9,0) 72%),
  linear-gradient(0deg,rgba(13,10,9,.95) 0%,rgba(13,10,9,0) 42%),
  linear-gradient(180deg,rgba(13,10,9,.55) 0%,rgba(13,10,9,0) 20%)}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;opacity:.12;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E")}
.hero-in{height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:28px}
.hero-copy{max-width:720px;margin-bottom:clamp(36px,6vh,72px)}
.hero-copy .kicker{color:rgba(246,239,231,.8)}
.hero-kick{flex-wrap:wrap;row-gap:6px}
.hero-copy .kicker i{width:5px;height:5px;border-radius:50%;background:var(--red-2)}
.hero-logo{width:min(470px,78vw);height:auto;margin:22px 0 4px -1.2%;filter:drop-shadow(0 20px 40px rgba(0,0,0,.6))}
.hero h1{font-size:clamp(46px,6.2vw,96px);margin-bottom:22px}
.hero h1 em{color:#f6efe7}
.hero p{font-size:clamp(17px,1.4vw,19px);color:rgba(246,239,231,.78);max-width:46ch;margin-bottom:34px}
.hero-ctas{display:flex;flex-wrap:wrap;gap:14px}

.player{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;padding:16px 18px 16px 22px;border-radius:22px;background:rgba(22,17,16,.55);backdrop-filter:blur(18px) saturate(1.3);border:1px solid rgba(246,239,231,.14)}
.now{display:flex;align-items:center;gap:16px;min-width:230px}
.eq{display:flex;align-items:flex-end;gap:3px;height:26px;width:26px}
.eq i{flex:1;background:var(--red-2);border-radius:2px;height:30%;animation:eq 1s ease-in-out infinite}
.eq i:nth-child(2){animation-delay:-.4s}.eq i:nth-child(3){animation-delay:-.7s}.eq i:nth-child(4){animation-delay:-.2s}
.paused .eq i{animation-play-state:paused}
@keyframes eq{0%,100%{height:25%}50%{height:100%}}
.now small{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:rgba(246,239,231,.55)}
.now b{display:block;font-family:var(--serif);font-weight:500;font-size:22px;line-height:1.2}
.tracks{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.track{text-align:left;font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:rgba(246,239,231,.5);transition:color .3s}
.track:hover,.track.on{color:#f6efe7}
.track span{display:block;margin-bottom:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.track .bar{display:block;height:2px;background:rgba(246,239,231,.18);border-radius:2px;overflow:hidden}
.track .bar i{display:block;height:100%;width:0;background:var(--grad)}
.track.done .bar i{width:100%}
.ctrls{display:flex;align-items:center;gap:6px}
.ctrls button{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;color:rgba(246,239,231,.8);transition:background .2s,color .2s}
.ctrls button:hover{background:rgba(246,239,231,.1);color:#fff}
.ctrls svg{width:16px;height:16px}
.ctrls .pp{width:54px;height:54px;background:var(--grad);color:#fff;box-shadow:0 10px 26px -10px rgba(198,49,27,.9)}
.ctrls .pp:hover{background:var(--grad);transform:scale(1.06)}
.ctrls .pp svg{width:20px;height:20px}
.ctrls .pp .i-play{display:none}
.paused .ctrls .pp .i-play{display:block}.paused .ctrls .pp .i-pause{display:none}

/* ---------- responsive ---------- */
@media (max-width:1100px){
  .player{grid-template-columns:1fr auto}
  .tracks{grid-column:1/-1;order:3}
  .about-grid{grid-template-columns:1fr}
  .record{margin:0 auto 0 0;width:min(78%,520px)}
  .formats{flex-direction:column;height:auto}
  .fmt{height:340px;flex:none!important}
  .fmt p,.fmt .more{max-height:none;opacity:1}
  .tickets{grid-template-columns:1fr 1fr}
  .lineup{grid-template-columns:1fr 1fr}
  .lineup h4{grid-column:1/-1}
  .vid{aspect-ratio:16/9}
}
@media (max-width:720px){
  .hero{min-height:660px}
  .hero::before{background:linear-gradient(0deg,rgba(13,10,9,.96) 0%,rgba(13,10,9,.6) 55%,rgba(13,10,9,.15) 85%),linear-gradient(180deg,rgba(13,10,9,.55),rgba(13,10,9,0) 25%)}
  .slide img{object-position:65% 30%}
  .hero-ctas .btn{flex:1;padding:0 16px;font-size:12px;letter-spacing:.08em}
  .hero-copy{margin-bottom:24px}
  .player{padding:12px 12px 14px 16px;gap:14px}
  .now{min-width:0}
  .now b{font-size:18px}
  .tracks{gap:8px}
  .track span{font-size:10px;letter-spacing:.04em}
  .hero-kick{font-size:11px;letter-spacing:.1em}
  .hero-kick i:nth-of-type(2){display:none}
  .hero-kick span:last-child{flex-basis:100%}
  .ctrls .prev,.ctrls .next{display:none}
  .ctrls .pp{width:46px;height:46px}
  .record{width:74%}
  .facts div{grid-template-columns:110px 1fr}
  .facts dd{font-size:18px}
  .fmt{height:300px}
  .lineup{grid-template-columns:1fr}
  .tickets{grid-template-columns:1fr}
  .no-gigs{grid-template-columns:1fr;padding:24px 20px;gap:18px}
  .ng-date{width:84px;height:92px}.ng-date b{font-size:48px}
  .ng-acts .btn{flex:1}
  .vid{aspect-ratio:4/5;border-radius:20px}
  .vid-cover{flex-direction:column-reverse;align-items:flex-start;justify-content:flex-end}
  .play-big{width:84px;height:84px;margin-bottom:auto}
  .strip a{height:200px}
  .steps{grid-template-columns:1fr}
  .step,.step + .step{padding:28px 0;border-left:0;border-bottom:1px solid var(--line)}
  .book-cta{padding:26px 22px}
}
