.section-hero-events {
  padding-top: var(--space-16);
  padding-bottom: var(--space-12);
}

.section-hero-events-inner {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
  gap: var(--space-10);
  align-items: center;
}

.section-hero-events-media img {
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-elevated);
}

.hero-actions {
  margin-top: var(--space-6);
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
}

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

.highlighted-event-meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-4);
  margin-top: var(--space-4);
  margin-bottom: var(--space-4);
  font-size: var(--font-size-sm);
}

.highlighted-event-meta dt {
  font-weight: 600;
  color: var(--color-text);
  margin-bottom: var(--space-1);
}

.highlighted-event-meta dd {
  margin: 0;
}

.highlighted-event-perks {
  list-style: disc;
  padding-left: 1.25rem;
  color: var(--color-text-muted);
  margin-bottom: var(--space-4);
}

.highlighted-event-media img {
  border-radius: var(--radius-xl);
}

.highlighted-event-status {
  margin-top: var(--space-3);
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
}

.highlighted-event-note {
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
  margin-top: var(--space-2);
}

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

.events-table {
  width: 100%;
  margin-top: var(--space-4);
  font-size: var(--font-size-sm);
}

.events-table th,
.events-table td {
  padding: 0.6rem 0.75rem;
  text-align: left;
}

.events-table thead {
  background-color: rgba(15, 23, 42, 0.9);
}

.events-table th {
  font-weight: 600;
  color: var(--color-text);
}

.events-table tbody tr:nth-child(even) {
  background-color: rgba(15, 23, 42, 0.55);
}

.events-table tbody tr:nth-child(odd) {
  background-color: rgba(15, 23, 42, 0.35);
}

.events-footnote {
  margin-top: var(--space-3);
  font-size: var(--font-size-sm);
}

.cashgame-list {
  display: grid;
  gap: var(--space-3);
  margin-top: var(--space-4);
  font-size: var(--font-size-sm);
}

.cashgame-list dt {
  font-weight: 600;
  color: var(--color-text);
}

.cashgame-list dd {
  margin: 0;
}

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

.sports-media img {
  border-radius: var(--radius-xl);
}

.sports-list {
  list-style: disc;
  padding-left: 1.25rem;
  margin-bottom: var(--space-3);
}

.events-special-list,
.private-list,
.new-player-list {
  list-style: disc;
  padding-left: 1.25rem;
  margin-bottom: var(--space-3);
}

.join-grid {
  gap: var(--space-8);
}

.new-player-card {
  align-self: center;
}

.gallery-grid {
  gap: var(--space-6);
}

.gallery-grid figcaption {
  font-size: var(--font-size-sm);
}

.testimonials-grid {
  gap: var(--space-6);
}

.quick-signup-card {
  display: flex;
  flex-direction: column;
  gap: var(--space-6);
}

.quick-signup-form {
  margin-top: var(--space-2);
}

.quick-signup-footer {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.quick-signup-consent {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  font-size: var(--font-size-sm);
}

.quick-signup-consent input[type="checkbox"] {
  width: auto;
  margin-right: var(--space-2);
}

.quick-signup-success {
  margin-top: var(--space-3);
  font-size: var(--font-size-sm);
  color: var(--color-success);
}

@media (max-width: 960px) {
  .section-hero-events-inner,
  .highlighted-event-grid,
  .sports-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .section-hero-events {
    padding-top: var(--space-12);
  }
}

@media (max-width: 768px) {
  .hero-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .highlighted-event-meta {
    grid-template-columns: minmax(0, 1fr);
  }

  .quick-signup-footer {
    align-items: flex-start;
  }
}

@media (max-width: 600px) {
  .events-table {
    font-size: var(--font-size-xs);
  }
}
