.salon-poker-page {}

.sp-hero {
  position: relative;
  min-height: 90vh;
  display: grid;
  align-items: center;
}

.sp-hero-bg img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sp-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.6);
}

.sp-hero-content {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: var(--container-wide);
  margin-inline: auto;
  padding-inline: var(--container-pad);
}

.sp-hero-text {
  max-width: 520px;
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.sp-hero-text h1 {
  color: var(--color-text-primary);
}

.sp-spirit-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: var(--space-5);
}

.sp-spirit-col { min-width: 0; }

.sp-drop::first-letter {
  font-size: 2.5rem;
  float: left;
  margin-right: 6px;
  color: var(--color-accent-gold);
}

.sp-tables-grid {
  display: grid;
  grid-template-columns: 60% 40%;
  gap: var(--space-5);
  align-items: center;
}

.sp-tables-image img { width: 100%; border-radius: var(--radius-sm); }
.sp-tables-text { max-width: 520px; }

.sp-hosts-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: var(--space-4);
}

.sp-card {
  padding: var(--space-4);
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.sp-card:hover {
  border-color: var(--color-accent-gold);
}

.sp-timeline-track {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: var(--space-4);
  margin-top: var(--space-5);
}

.sp-step { min-width: 0; }

.sp-formats-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: var(--space-4);
}

.sp-sensory-grid {
  display: grid;
  grid-template-columns: 40% 60%;
  gap: var(--space-5);
  align-items: center;
}

.sp-sensory-text { max-width: 520px; margin-left: auto; }

.sp-rules {
  background: var(--color-bg-secondary);
}

.sp-rules-inner {
  max-width: 720px;
  margin-inline: auto;
  text-align: center;
}

.sp-cta-inner {
  text-align: center;
  max-width: 520px;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

@media (max-width: 1024px) {
  .sp-spirit-grid { grid-template-columns: 1fr; }
  .sp-tables-grid { grid-template-columns: 1fr; }
  .sp-hosts-grid { grid-template-columns: 1fr; }
  .sp-timeline-track { grid-template-columns: 1fr 1fr; }
  .sp-formats-grid { grid-template-columns: 1fr; }
  .sp-sensory-grid { grid-template-columns: 1fr; }
  .sp-sensory-text { margin-left: 0; }
}

@media (max-width: 640px) {
  .sp-timeline-track { grid-template-columns: 1fr; }
  .sp-hero-text { max-width: 100%; }
}
