/* Poker Tables page styles */

/* Hero */
.poker-hero {
  position: relative;
  min-height: 80vh;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background-color: var(--color-asphalt);
}

.poker-hero__media {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.poker-hero__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.poker-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: rgba(10, 11, 14, 0.4);
  background: linear-gradient(180deg, rgba(10, 11, 14, 0.65) 0%, rgba(10, 11, 14, 0.4) 40%, rgba(10, 11, 14, 0.75) 100%);
}

.poker-hero__content {
  position: relative;
  z-index: 2;
  max-width: 800px;
  margin-inline: auto;
  text-align: center;
  padding-block: var(--space-3xl);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-lg);
}

.poker-hero__eyebrow {
  color: var(--color-ember);
  margin-block-end: 0;
}

.poker-hero__title {
  font-size: var(--text-display-size);
  line-height: var(--text-display-leading);
  letter-spacing: var(--text-display-tracking);
  color: var(--color-chalk);
  margin-block-end: 0;
  max-width: 100%;
}

.poker-hero__lead {
  font-size: var(--text-body-large-size);
  line-height: var(--text-body-large-leading);
  letter-spacing: var(--text-body-large-tracking);
  color: var(--color-chalk);
  max-width: 640px;
  margin-inline: auto;
  margin-block-end: 0;
}

.poker-hero__facts {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-sm);
  font-family: var(--font-mono);
  font-size: var(--text-mono-size);
  line-height: var(--text-mono-leading);
  letter-spacing: var(--text-mono-tracking);
  color: var(--color-chalk);
}

.poker-hero__facts li {
  background-color: rgba(27, 30, 37, 0.75);
  border: var(--border-default);
  padding: var(--space-xs) var(--space-md);
  border-radius: var(--radius-default);
  white-space: nowrap;
}

.poker-hero__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-md);
  margin-block-start: var(--space-xs);
}

.poker-hero__cta {
  min-width: 220px;
}

/* Craftsmanship */
.poker-craft {
  background-color: var(--color-canyon);
}

.poker-craft__intro {
  max-width: 720px;
  margin-block-end: var(--space-xl);
}

.poker-craft__eyebrow {
  color: var(--color-ember);
  margin-block-end: var(--space-xs);
}

.poker-craft__title {
  margin-block-end: var(--space-md);
}

.poker-craft__lead {
  font-size: var(--text-body-large-size);
  line-height: var(--text-body-large-leading);
  color: var(--color-smoke);
  margin-block-end: 0;
}

.poker-craft__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-lg);
}

.poker-craft__card {
  background-color: var(--color-strata);
  border: var(--border-default);
  border-radius: var(--radius-default);
  padding: var(--space-lg);
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
  min-width: 0;
}

.poker-craft__card-title {
  margin-block-end: 0;
  font-size: var(--text-h4-size);
  line-height: var(--text-h4-leading);
  letter-spacing: var(--text-h4-tracking);
}

.poker-craft__card-copy {
  margin-block-end: 0;
  color: var(--color-chalk);
}

.poker-craft__card-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  font-family: var(--font-mono);
  font-size: var(--text-mono-size);
  line-height: var(--text-mono-leading);
  letter-spacing: var(--text-mono-tracking);
  color: var(--color-smoke);
}

.poker-craft__card-list li {
  padding-inline-start: var(--space-md);
  position: relative;
}

.poker-craft__card-list li::before {
  content: '▸';
  position: absolute;
  left: 0;
  color: var(--color-ember);
}

/* Card Lounge */
.poker-lounge {
  background-color: var(--color-asphalt);
}

.poker-lounge__layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-xl);
  align-items: start;
}

.poker-lounge__content {
  display: flex;
  flex-direction: column;
  gap: var(--space-lg);
  min-width: 0;
}

.poker-lounge__eyebrow {
  color: var(--color-ember);
  margin-block-end: var(--space-xs);
}

.poker-lounge__title {
  margin-block-end: var(--space-md);
}

.poker-lounge__unit {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}

.poker-lounge__unit-title {
  margin-block-end: 0;
  font-size: var(--text-h4-size);
  line-height: var(--text-h4-leading);
  letter-spacing: var(--text-h4-tracking);
}

.poker-lounge__unit-copy {
  margin-block-end: 0;
  color: var(--color-chalk);
}

.poker-lounge__unit-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  font-family: var(--font-mono);
  font-size: var(--text-mono-size);
  line-height: var(--text-mono-leading);
  letter-spacing: var(--text-mono-tracking);
  color: var(--color-smoke);
}

.poker-lounge__unit-list li {
  padding-inline-start: var(--space-md);
  position: relative;
}

.poker-lounge__unit-list li::before {
  content: '▸';
  position: absolute;
  left: 0;
  color: var(--color-ember);
}

.poker-lounge__media {
  min-width: 0;
}

.poker-lounge__image {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: center;
  border: var(--border-default);
  border-radius: var(--radius-default);
}

/* Etiquette */
.poker-etiquette {
  background-color: var(--color-strata);
}

.poker-etiquette__intro {
  max-width: 720px;
  margin-block-end: var(--space-xl);
}

.poker-etiquette__eyebrow {
  color: var(--color-ember);
  margin-block-end: var(--space-xs);
}

.poker-etiquette__title {
  margin-block-end: var(--space-md);
}

.poker-etiquette__lead {
  font-size: var(--text-body-large-size);
  line-height: var(--text-body-large-leading);
  color: var(--color-smoke);
  margin-block-end: 0;
}

.poker-etiquette__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-lg);
}

.poker-etiquette__card {
  background-color: var(--color-canyon);
  border: var(--border-default);
  border-radius: var(--radius-default);
  padding: var(--space-lg);
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
  min-width: 0;
}

.poker-etiquette__card-title {
  margin-block-end: 0;
  font-size: var(--text-h4-size);
  line-height: var(--text-h4-leading);
  letter-spacing: var(--text-h4-tracking);
}

.poker-etiquette__card-copy {
  margin-block-end: 0;
  color: var(--color-chalk);
}

.poker-etiquette__card-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  font-family: var(--font-mono);
  font-size: var(--text-mono-size);
  line-height: var(--text-mono-leading);
  letter-spacing: var(--text-mono-tracking);
  color: var(--color-smoke);
  counter-reset: rule-counter;
}

.poker-etiquette__card-list li {
  counter-increment: rule-counter;
  padding-inline-start: var(--space-lg);
  position: relative;
}

.poker-etiquette__card-list li::before {
  content: counter(rule-counter, decimal-leading-zero);
  position: absolute;
  left: 0;
  color: var(--color-ember);
  font-weight: 700;
}

/* Specifications */
.poker-specs {
  background-color: var(--color-asphalt);
}

.poker-specs__intro {
  max-width: 720px;
  margin-block-end: var(--space-lg);
}

.poker-specs__eyebrow {
  color: var(--color-ember);
  margin-block-end: var(--space-xs);
}

.poker-specs__title {
  margin-block-end: var(--space-sm);
}

.poker-specs__lead {
  color: var(--color-smoke);
  margin-block-end: 0;
}

.poker-specs__table-wrap {
  overflow-x: auto;
  border: var(--border-default);
  border-radius: var(--radius-default);
}

.poker-specs__table {
  width: 100%;
  min-width: 480px;
  border-collapse: collapse;
  font-family: var(--font-mono);
  font-size: var(--text-mono-size);
  line-height: var(--text-mono-leading);
  letter-spacing: var(--text-mono-tracking);
  margin-block-end: 0;
}

.poker-specs__table th,
.poker-specs__table td {
  padding: var(--space-sm) var(--space-md);
  border-bottom: var(--border-default);
  text-align: start;
}

.poker-specs__table th {
  font-size: var(--text-caption-size);
  line-height: var(--text-caption-leading);
  letter-spacing: var(--text-caption-tracking);
  text-transform: uppercase;
  color: var(--color-smoke);
  background-color: var(--color-canyon);
}

.poker-specs__table tbody tr:nth-child(even) td {
  background-color: var(--color-canyon);
}

.poker-specs__table tbody tr:nth-child(odd) td {
  background-color: var(--color-strata);
}

.poker-specs__table tbody tr:hover td {
  background-color: var(--color-felt);
}

/* Reservation CTA */
.poker-reserve {
  background-color: var(--color-canyon);
}

.poker-reserve__container {
  max-width: 600px;
  margin-inline: auto;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-md);
}

.poker-reserve__eyebrow {
  color: var(--color-ember);
  margin-block-end: 0;
}

.poker-reserve__title {
  margin-block-end: 0;
}

.poker-reserve__copy {
  margin-block-end: 0;
  color: var(--color-chalk);
  max-width: 480px;
}

.poker-reserve__list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-sm);
  font-family: var(--font-mono);
  font-size: var(--text-mono-size);
  line-height: var(--text-mono-leading);
  letter-spacing: var(--text-mono-tracking);
  color: var(--color-smoke);
}

.poker-reserve__list li {
  padding-inline-start: var(--space-md);
  position: relative;
}

.poker-reserve__list li::before {
  content: '▸';
  position: absolute;
  left: 0;
  color: var(--color-ember);
}

.poker-reserve__cta {
  min-width: 240px;
}

/* Tournament Teaser */
.poker-tournament {
  background-color: var(--color-asphalt);
}

.poker-tournament__container {
  max-width: 600px;
  margin-inline: auto;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-md);
}

.poker-tournament__eyebrow {
  color: var(--color-ember);
  margin-block-end: 0;
}

.poker-tournament__title {
  margin-block-end: 0;
}

.poker-tournament__copy {
  margin-block-end: 0;
  color: var(--color-chalk);
  max-width: 480px;
}

.poker-tournament__list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-sm);
  font-family: var(--font-mono);
  font-size: var(--text-mono-size);
  line-height: var(--text-mono-leading);
  letter-spacing: var(--text-mono-tracking);
  color: var(--color-smoke);
}

.poker-tournament__list li {
  padding-inline-start: var(--space-md);
  position: relative;
}

.poker-tournament__list li::before {
  content: '▸';
  position: absolute;
  left: 0;
  color: var(--color-ember);
}

.poker-tournament__cta {
  min-width: 240px;
}

/* Final Global CTA */
.poker-final {
  background-color: var(--color-strata);
}

.poker-final__container {
  max-width: 700px;
  margin-inline: auto;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-md);
}

.poker-final__eyebrow {
  color: var(--color-ember);
  margin-block-end: 0;
}

.poker-final__title {
  margin-block-end: 0;
}

.poker-final__subheading {
  font-size: var(--text-body-large-size);
  line-height: var(--text-body-large-leading);
  color: var(--color-smoke);
  margin-block-end: 0;
  max-width: 520px;
}

.poker-final__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-md);
}

.poker-final__cta {
  min-width: 240px;
}

.poker-final__link {
  align-self: center;
}

/* Responsive */
@media (max-width: 1024px) {
  .poker-craft__grid,
  .poker-etiquette__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .poker-lounge__layout {
    grid-template-columns: 1fr;
    gap: var(--space-lg);
  }

  .poker-lounge__media {
    order: -1;
  }
}

@media (max-width: 768px) {
  .poker-hero {
    min-height: 70vh;
  }

  .poker-hero__content {
    padding-block: var(--space-2xl);
    gap: var(--space-md);
  }

  .poker-hero__title {
    font-size: var(--text-h1-size);
    line-height: var(--text-h1-leading);
    letter-spacing: var(--text-h1-tracking);
  }

  .poker-hero__lead {
    font-size: var(--text-body-size);
    line-height: var(--text-body-leading);
  }

  .poker-hero__facts {
    gap: var(--space-xs);
  }

  .poker-hero__facts li {
    padding: var(--space-2xs) var(--space-sm);
    font-size: var(--text-caption-size);
    line-height: var(--text-caption-leading);
    letter-spacing: var(--text-caption-tracking);
  }

  .poker-hero__actions {
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 320px;
  }

  .poker-hero__cta {
    width: 100%;
    min-width: 0;
  }

  .poker-craft__grid,
  .poker-etiquette__grid {
    grid-template-columns: 1fr;
  }

  .poker-craft__intro,
  .poker-etiquette__intro,
  .poker-specs__intro {
    margin-block-end: var(--space-lg);
  }

  .poker-lounge__layout {
    gap: var(--space-md);
  }

  .poker-reserve__container,
  .poker-tournament__container,
  .poker-final__container {
    gap: var(--space-sm);
  }

  .poker-reserve__list,
  .poker-tournament__list {
    flex-direction: column;
    align-items: center;
  }

  .poker-reserve__cta,
  .poker-tournament__cta,
  .poker-final__cta {
    width: 100%;
    max-width: 320px;
    min-width: 0;
  }

  .poker-final__actions {
    flex-direction: column;
    align-items: center;
    width: 100%;
  }
}

@media (max-width: 480px) {
  .poker-hero {
    min-height: 65vh;
  }

  .poker-hero__content {
    padding-block: var(--space-xl);
  }

  .poker-hero__title {
    font-size: 2rem;
    line-height: 1.1;
  }

  .poker-hero__facts {
    flex-direction: column;
    align-items: center;
  }

  .poker-hero__facts li {
    white-space: normal;
    text-align: center;
  }

  .poker-specs__table-wrap {
    border-inline: none;
  }
}
