.vip-page .section-header {
  margin-bottom: var(--space-8);
}

.section-eyebrow {
  font-size: var(--font-size-xs);
  text-transform: uppercase;
  letter-spacing: 0.26em;
  color: var(--gray-300);
  margin-bottom: var(--space-2);
}

.section-intro {
  margin-inline: auto;
}

.hero--vip {
  align-items: center;
}

.vip-hero-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  gap: var(--space-8);
  align-items: center;
}

.vip-hero-copy {
  max-width: 40rem;
}

.vip-hero-cta {
  margin-top: var(--space-6);
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4);
}

.vip-hero-meta {
  margin-top: var(--space-4);
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
}

.vip-hero-aside .card {
  max-width: 100%;
}

.vip-hero-list {
  margin-bottom: var(--space-4);
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
}

.vip-hero-list li + li {
  margin-top: var(--space-1);
}

.vip-feature-grid {
  align-items: stretch;
}

.vip-feature h3 {
  margin-bottom: var(--space-3);
}

.vip-bullet-list {
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
}

.vip-bullet-list li + li {
  margin-top: var(--space-1);
}

.vip-bar-section {
  background: radial-gradient(circle at top left, rgba(217, 177, 95, 0.18), transparent 55%), #050608;
}

.vip-bar-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.3fr);
  gap: var(--space-8);
  align-items: center;
}

.vip-bar-media img {
  border-radius: var(--radius-lg);
}

.vip-events-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1.4fr);
  gap: var(--space-8);
  align-items: stretch;
}

.vip-events-frame img {
  border-radius: var(--radius-lg);
}

.vip-event-grid {
  align-items: stretch;
}

.vip-event-card h3 {
  margin-bottom: var(--space-3);
}

.vip-membership-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(0, 1.1fr);
  gap: var(--space-8);
  align-items: flex-start;
}

.vip-membership-copy > p {
  max-width: 38rem;
}

.vip-benefit-grid {
  margin-top: var(--space-6);
}

.vip-benefit h3 {
  margin-bottom: var(--space-2);
}

.vip-membership-cta {
  margin-top: var(--space-6);
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4);
}

.vip-gastro-card,
.vip-games-card {
  margin-bottom: var(--space-4);
}

.vip-games-links {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-3);
  font-size: var(--font-size-sm);
}

.vip-games-links a {
  color: var(--gray-100);
}

.vip-services-section {
  background-color: rgba(17, 19, 23, 0.95);
}

.vip-service-grid {
  align-items: stretch;
}

.vip-service-card h3 {
  margin-bottom: var(--space-3);
}

.vip-private-dining-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(0, 1.2fr);
  gap: var(--space-8);
  align-items: center;
}

.vip-private-dining-frame img {
  border-radius: var(--radius-lg);
}

.vip-private-dining-copy > p {
  max-width: 36rem;
}

.vip-private-dining-copy .btn {
  margin-top: var(--space-4);
}

.vip-testimonial-grid {
  align-items: stretch;
}

.vip-testimonial-name {
  font-weight: 600;
  margin-bottom: var(--space-1);
}

.vip-testimonial-role {
  font-size: var(--font-size-xs);
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: var(--gray-300);
  margin-bottom: var(--space-3);
}

.vip-testimonial-text {
  font-size: var(--font-size-sm);
}

.vip-testimonials-cta p {
  margin-bottom: var(--space-3);
}

.vip-next-steps-layout {
  max-width: 1100px;
  margin-inline: auto;
}

.vip-next-steps-grid {
  align-items: flex-start;
}

.vip-next-step h3 {
  margin-bottom: var(--space-2);
}

.vip-next-step p {
  font-size: var(--font-size-sm);
}

.vip-next-links {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}

.vip-next-step a {
  font-size: var(--font-size-sm);
}

@media (max-width: 1024px) {
  .vip-hero-layout,
  .vip-bar-layout,
  .vip-events-layout,
  .vip-membership-layout,
  .vip-private-dining-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .vip-hero-aside {
    order: -1;
  }

  .vip-bar-media,
  .vip-events-media,
  .vip-private-dining-media {
    max-width: 520px;
    margin-inline: auto;
  }
}

@media (max-width: 768px) {
  .hero--vip {
    min-height: auto;
  }

  .vip-hero-cta {
    flex-direction: column;
    align-items: stretch;
  }

  .vip-membership-cta {
    flex-direction: column;
    align-items: stretch;
  }

  .vip-next-steps-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
