/* ============================================
   MEMBERSHIP PAGE — Art Deco Silver Screen
============================================ */
.membership-page {
  background:
    radial-gradient(ellipse 80% 50% at 50% 0%, rgba(201, 168, 76, 0.08), transparent 60%),
    linear-gradient(180deg, var(--color-bg-charcoal) 0%, var(--color-bg-dark) 100%);
  min-height: 100vh;
  padding-top: 70px;
  color: var(--color-cream);
  position: relative;
  overflow: hidden;
}

/* Faint art deco sunburst behind everything */
.membership-page::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  width: 140vmax;
  height: 140vmax;
  transform: translate(-50%, -45%);
  background: repeating-conic-gradient(
    from 0deg,
    transparent 0deg 6deg,
    rgba(201, 168, 76, 0.012) 6deg 6.4deg
  );
  -webkit-mask-image: radial-gradient(ellipse 50% 35% at 50% 30%, black, transparent 70%);
  mask-image: radial-gradient(ellipse 50% 35% at 50% 30%, black, transparent 70%);
  pointer-events: none;
  z-index: 0;
}

.membership-page > * {
  position: relative;
  z-index: 1;
}

/* Final CTA — small marquee panel */
.membership-page__final-cta {
  text-align: center;
  padding: var(--spacing-2xl) var(--spacing-md);
  max-width: 720px;
  margin: 0 auto var(--spacing-2xl);
}

.membership-page__final-cta-rule {
  display: block;
  width: 60%;
  margin: 0 auto var(--spacing-lg);
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent,
    var(--color-gold) 30%,
    var(--color-gold) 70%,
    transparent
  );
}

.membership-page__final-cta h2 {
  font-family: var(--font-display);
  font-size: 2.4rem;
  letter-spacing: 8px;
  text-transform: uppercase;
  color: var(--color-gold);
  text-shadow: 0 0 16px var(--color-gold-glow);
  margin: 0 0 var(--spacing-md);
}

.membership-page__final-cta p {
  font-family: var(--font-body);
  font-style: italic;
  font-size: 1.2rem;
  color: var(--color-cream-muted);
  margin: 0 0 var(--spacing-lg);
}

@media (max-width: 600px) {
  .membership-page__final-cta h2 {
    font-size: 1.6rem;
    letter-spacing: 5px;
  }
}
