.gig-hero{
  position:relative;
  overflow:hidden;
  border-radius: 1px;
  --gig-accent:#e3413b;
  --gig-pad: 48px;
}

.gig-hero .gig-hero-swiper{
  width:100%;
  height:60vh;
}

.gig-hero .gig-slide{ position:relative; width:100%; height:100%; }

.gig-hero .gig-bg{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover;
  transform:scale(1.02);
  filter:saturate(90%);
}

.gig-hero .gig-bg-video{ object-fit:cover; }

.gig-hero .gig-yt-wrap{
  position:absolute; inset:0;
  overflow:hidden;
}
.gig-hero .gig-yt-wrap iframe{
  position:absolute; top:50%; left:50%;
  width:120%; height:120%;
  transform:translate(-50%,-50%);
  border:0;
}

.gig-hero .gig-overlay{
  position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,.25), rgba(0,0,0,.45));
  z-index:1;
}

.gig-hero .gig-caption{
  position:absolute;
  left:var(--gig-pad);
  right:40%;
  bottom:70px;
  color:#fff;
  z-index:2;
}

.gig-hero .gig-title{ margin:0 0 8px; font-weight:700; }
.gig-hero .gig-sub{ margin:0; opacity:.92; }

.gig-hero .gig-nav{
  position:absolute;
  bottom:90px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:8px;
  z-index:3;
}

.gig-hero .gig-num{
  color:#fff;
  min-width:32px;
  text-align:left;
}

.gig-hero .gig-bar{
  width:min(38vw, 360px);
  height:4px;
  border-radius:999px;
  background:rgba(255,255,255,.6);
  overflow:hidden;
}
.gig-hero .gig-bar i{
  display:block;
  height:100%;
  width:0%;
  background:var(--gig-accent);
  border-radius:999px;
  transition:width .35s ease;
}

@media (max-width:768px){
  .gig-hero .gig-caption{ left:var(--gig-pad); right:var(--gig-pad); bottom:70px; }
  .gig-hero .gig-nav{ bottom:16px; }
  .gig-hero .gig-bar{ width:min(56vw, 300px); }
}
