/* ============================================================
   PANEL DETAILS: CRAFTED AT SOURCE + THE BRILLIANCE COLLECTION
   ============================================================ */
/* ---------- Crafted at Source: bangles fall one by one ---------- */
.vault.maroon .bangle-drop {
  width: min(36vw, 580px);
  left: 6%;
  top: 54%;
  aspect-ratio: 900/980;
  filter: none;
}
.vault.maroon .b-drop {
  left: 0;
  top: auto;
  bottom: 0;
  width: 100%;
  height: auto;
}
.vault.maroon .b-floor {
  left: 4%;
  right: 4%;
  bottom: -8%;
  height: 12%;
}
.b-drop {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: auto;
  will-change: transform;
  filter: drop-shadow(0 28px 26px rgba(0, 0, 0, 0.55)) drop-shadow(0 6px 8px rgba(0, 0, 0, 0.3));
}
.b-floor {
  position: absolute;
  left: 6%;
  right: 6%;
  bottom: -18%;
  height: 22%;
  border-radius: 50%;
  background: radial-gradient(closest-side, rgba(0, 0, 0, 0.55), transparent);
  filter: blur(12px);
}
.vault.maroon {
  clip-path: inset(0);
}
@media (max-width: 980px) {
  .vault.maroon {
    padding-top: min(96vw, 560px);
  }
  .vault.maroon .bangle-drop {
    width: min(78vw, 440px);
    left: 50%;
    margin-left: calc(min(78vw, 440px) / -2);
    top: calc(min(96vw, 560px) / 2 + 10px);
  }
}

/* ---------- The Brilliance Collection: noir, cinematic ---------- */
.vault.noir .bg {
  background: radial-gradient(ellipse 50% 70% at 70% 42%, #2a2230 0%, #120f16 55%, #050407 100%);
}
.vault.noir .bg::before {
  display: none;
}
.vault.noir .h2 {
  color: var(--cream);
}
.vault.noir .h2 em {
  color: var(--gold-2);
}
.vault.noir .lead {
  color: rgba(251, 247, 240, 0.72);
}
.vault.noir .eyebrow {
  color: var(--gold);
}
.noir-fx {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  z-index: 2;
}
.noir-fx .spot {
  position: absolute;
  left: 70%;
  top: -10%;
  width: 60vw;
  height: 120%;
  translate: -50% 0;
  opacity: 0;
  background: linear-gradient(
    180deg,
    rgba(255, 244, 225, 0.26),
    rgba(255, 236, 210, 0.08) 55%,
    transparent 85%
  );
  clip-path: polygon(42% 0, 58% 0, 100% 100%, 0 100%);
  filter: blur(26px);
}
.noir-fx .flare {
  position: absolute;
  left: 0;
  top: 44%;
  width: 70%;
  height: 2px;
  opacity: 0;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(170, 205, 255, 0) 10%,
    rgba(200, 225, 255, 0.9) 50%,
    rgba(170, 205, 255, 0) 90%,
    transparent
  );
  box-shadow:
    0 0 18px 4px rgba(170, 205, 255, 0.35),
    0 0 60px 12px rgba(140, 180, 255, 0.15);
}
.noir-fx .lb {
  position: absolute;
  left: 0;
  right: 0;
  height: 14vh;
  background: #000;
}
.noir-fx .lb.t {
  top: 0;
}
.noir-fx .lb.b {
  bottom: 0;
}
.vault.noir .dia-stage {
  width: min(40vw, 640px);
  right: 6%;
  top: 50%;
  z-index: 3;
  aspect-ratio: 900/1130;
}
.vault.noir .dia-img {
  filter: drop-shadow(0 40px 50px rgba(0, 0, 0, 0.8)) drop-shadow(0 0 30px rgba(255, 240, 220, 0.08));
}
@media (max-width: 980px) {
  .vault.noir .dia-stage {
    width: 84%;
    left: 8%;
    right: auto;
    top: calc(min(86vw, 560px) / 2 + 20px);
  }
  .noir-fx .spot {
    left: 50%;
    width: 120vw;
  }
}
