.intro-splash {
  position: fixed; inset: 0; z-index: 9999;
  background: var(--bg-deep);
  display: flex; flex-direction: column;
  align-items: center; justify-content: center;
  transition: opacity 1.2s ease, visibility 1.2s ease;
}
.intro-splash.hide { opacity: 0; visibility: hidden; pointer-events: none; }
.intro-title {
  font-family: var(--font-display);
  font-size: clamp(5rem, 12vw, 7rem) !important;
  letter-spacing: .3em;
  opacity: 0;
  animation: introFade 1.5s ease .3s forwards;
}
.intro-sub {
  font-family: var(--font-display);
  font-weight: 400; font-size: 1.4rem !important;
  color: var(--text-muted); letter-spacing: .5em;
  margin-top: 40px; opacity: 0;
  animation: introFade 1.2s ease 1s forwards;
}
.intro-enter {
  margin-top: 60px; background: none;
  border: 1px solid var(--border-hover);
  color: var(--text-sec); font-family: var(--font-body);
  font-size: .82rem; font-weight: 300;
  padding: 10px 32px; border-radius: 6px;
  cursor: pointer; letter-spacing: .3em;
  transition: all var(--ease);
  opacity: 0; animation: introFade 1s ease 1.8s forwards;
}
.intro-enter:hover {
  border-color: var(--gold-dim); color: var(--gold);
  background: rgba(201, 169, 82, .04);
}
@keyframes introFade {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: none; }
}
