/* Holding page and 404 additions on top of the site styles */

/* Content sits over the landscape, which stays pinned to the bottom of the
   screen, so the whole scene fits on one screen where it can. */
.hero--holding {
  min-height: 100vh;
  min-height: 100svh;
  justify-content: center;
  padding-bottom: clamp(120px, 23vh, 250px);
}
.hero--holding .hero__inner {
  z-index: 2;
  padding-top: clamp(1.5rem, 5vh, 3.5rem);
  padding-bottom: 0;
}
.hero--holding .hero__badge {
  width: clamp(150px, min(42vw, 27vh), 270px);
}
.hero--holding .hero__tag {
  font-size: clamp(1.7rem, 3.8vw, 2.5rem);
}
.hero--holding .hero__land {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 0;
  height: clamp(140px, max(24vh, 16vw), 300px);
}

.hold-gigs {
  margin-top: clamp(1.1rem, 3vh, 2rem);
  padding: 0.9rem 1.5rem 1rem;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(11, 14, 18, 0.45);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  min-width: min(100%, 24rem);
}
.hold-gigs__title {
  margin: 0 0 0.6rem;
  font-family: var(--sans);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--sun);
}
.hold-gigs li {
  display: flex;
  justify-content: center;
  gap: 0.9rem;
  flex-wrap: wrap;
  padding: 0.3rem 0;
}
.hold-gigs__date {
  font-family: var(--display);
  font-size: 1.25rem;
  letter-spacing: 0.05em;
  line-height: 1.3;
}
.hold-gigs__venue {
  color: var(--cream-muted);
}

.hold-contact {
  margin: clamp(1rem, 2.6vh, 1.6rem) 0 0;
}
.hold-contact a {
  font-weight: 700;
  font-size: clamp(1.05rem, 3.8vw, 1.3rem);
  color: var(--cream);
  text-decoration-color: var(--sun);
  text-decoration-thickness: 2px;
  text-underline-offset: 0.3em;
  overflow-wrap: anywhere;
}
.hold-contact a:hover {
  color: var(--sun);
}
.hold-socials {
  margin-top: 0.9rem;
}
.hold-soon {
  margin: 0.9rem 0 0;
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--cream-faint);
}

.nf-rose {
  width: 72px;
  height: 72px;
  margin-bottom: 1.5rem;
  overflow: visible;
}
.nf-title {
  font-family: var(--display);
  font-size: clamp(3.5rem, 12vw, 7rem);
  line-height: 0.9;
  letter-spacing: 0.02em;
  margin-bottom: 1rem;
}
.hero--holding .eyebrow::after {
  content: "";
  width: 1.75rem;
  height: 1.5px;
  background: currentColor;
}
.hold-socials a {
  background: rgba(11, 14, 18, 0.6);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}
@media (max-width: 520px) {
  .hold-gigs li {
    flex-direction: column;
    gap: 0;
    padding: 0.55rem 0;
  }
  .hold-gigs li + li {
    border-top: 1px solid var(--line);
  }
}
