.poker-page {
  overflow: hidden;
}

.poker-page .poker-reveal {
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 200ms ease-out, transform 200ms ease-out;
}

.poker-page .poker-reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.poker-hero {
  padding-block-start: clamp(7rem, 16vh, 11rem);
  padding-block-end: var(--space-9);
}

.poker-hero__grid,
.poker-host__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  align-items: center;
  gap: var(--space-6);
}

.poker-hero__copy {
  width: 100%;
  max-width: 31.875rem;
  min-width: 0;
}

.poker-hero__age {
  display: inline-block;
  margin-block: 0 var(--space-3);
  padding: var(--space-1) var(--space-2);
  background: var(--color-blood-red);
  color: var(--color-paper-white);
  font-size: var(--text-label);
  font-weight: 700;
  letter-spacing: .12em;
  line-height: 1.2;
}

.poker-hero h1 {
  font-size: clamp(3.5rem, 7vw, 4.5rem);
  hyphens: auto;
}

.poker-hero__lead {
  max-width: 31rem;
  color: var(--color-paper-white);
  font-size: var(--text-lead);
  line-height: 1.45;
}

.poker-hero__actions {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
}

.poker-hero__meta,
.poker-cta__meta {
  margin: 0;
  color: var(--color-muted-white);
  font-size: var(--text-label);
  font-weight: 600;
  letter-spacing: .1em;
  line-height: 1.4;
  text-transform: uppercase;
}

.poker-hero__media {
  width: 100%;
  min-width: 0;
  aspect-ratio: 16 / 10;
  margin: 0;
}

.poker-hero__media img {
  width: 100%;
  height: 100%;
  object-position: 70% center;
}

.poker-premise__copy {
  width: min(100%, 42.5rem);
  margin-inline-start: calc((100% / 6) * 1);
}

.poker-premise h2 {
  position: relative;
  max-width: 38rem;
  padding-inline-start: var(--space-4);
  font-size: clamp(2.5rem, 4.5vw, 3.5rem);
}

.poker-premise h2::before {
  position: absolute;
  inset-block: .1em .1em;
  inset-inline-start: 0;
  width: 2px;
  background: var(--color-blood-red);
  content: "";
}

.poker-premise__copy > p:not(.eyebrow) {
  max-width: 42.5rem;
  padding-block-start: var(--space-4);
  border-block-start: var(--border-default);
}

.poker-premise__notice {
  width: 100%;
  margin-block-start: var(--space-5);
  padding: var(--space-4);
  border: var(--border-light);
  color: var(--color-paper-white);
  line-height: 1.55;
}

.poker-premise__notice span {
  color: var(--color-blood-red);
  font-weight: 700;
}

.poker-rhythms__intro {
  width: min(100%, 35rem);
  min-width: 0;
}

.poker-rhythms__bands {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  margin-block-start: var(--space-7);
  border-block-start: var(--border-default);
}

.poker-band {
  display: grid;
  width: 100%;
  min-width: 0;
  gap: var(--space-5);
  padding-block: var(--space-6);
  border-block-end: var(--border-default);
}

.poker-band > * { min-width: 0; }
.poker-band--one { grid-template-columns: minmax(0, 3fr) minmax(13.75rem, 3fr) minmax(0, 6fr); }
.poker-band--two { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); padding-inline: var(--space-5); background: var(--color-smoke-grey); }
.poker-band--three { grid-template-columns: minmax(0, 9fr) minmax(0, 3fr); }

.poker-band__number {
  margin: 0;
  color: var(--color-paper-white);
  font-family: var(--font-heading);
  font-size: clamp(3.5rem, 8vw, 6rem);
  font-weight: 700;
  line-height: .8;
}

.poker-band h3 { margin: 0; }
.poker-band__body { width: 100%; min-width: 0; max-width: 37.5rem; }
.poker-band__body > :last-child { margin-block-end: 0; }
.poker-band--two .poker-band__body { justify-self: end; }
.poker-band blockquote { max-width: 25rem; margin-block: var(--space-5) 0; }
.poker-band__ending { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-3); }
.poker-band__ending span { width: 2px; height: 3rem; background: var(--color-blood-red); }
.poker-band__ending h3 { max-width: 13rem; }

.poker-host__grid {
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  align-items: start;
}

.poker-host__copy { width: 100%; max-width: 37.5rem; min-width: 0; }
.poker-host__quote { display: flex; min-width: 0; flex-direction: column; gap: var(--space-3); margin-block: var(--space-5); }
.poker-host__quote blockquote { max-width: 26.25rem; margin: 0; }
.poker-host__quote p { max-width: 26.25rem; margin: 0; }
.poker-host__closing { max-width: 37.5rem; }
.poker-host__media { width: 100%; min-width: 0; aspect-ratio: 4 / 5; margin: 0; }
.poker-host__media img { width: 100%; height: calc(100% - 2rem); object-position: 58% center; }
.poker-host__media figcaption { padding-block-start: var(--space-3); }

.poker-dining__intro { width: min(100%, 37.5rem); min-width: 0; }
.poker-dining__media { width: 100%; min-width: 0; margin-block: var(--space-7); }
.poker-dining__media img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-position: center; }
.poker-dining__media figcaption { padding-block-start: var(--space-3); }
.poker-dining__after { width: min(100%, 42.5rem); margin-inline-start: auto; margin-inline-end: auto; }
.poker-dining__after > p { max-width: 42.5rem; }
.poker-dining__highlight { max-width: 32.5rem; padding-block-start: var(--space-4); border-block-start: var(--border-default); color: var(--color-paper-white); font-size: var(--text-lead); line-height: 1.45; }

.poker-process__intro { width: min(100%, 33.75rem); min-width: 0; margin-inline-start: calc((100% / 6) * 1); }
.poker-disclosures { display: flex; width: min(100%, 56.25rem); min-width: 0; flex-direction: column; margin: var(--space-7) auto 0; border-block-start: var(--border-default); }
.poker-disclosure { width: 100%; min-width: 0; border-block-end: var(--border-default); }
.poker-disclosure__button { display: grid; width: 100%; min-width: 0; grid-template-columns: 5.625rem minmax(0, 1fr) 2.5rem; align-items: center; gap: var(--space-3); padding: var(--space-4) 0; background: transparent; color: var(--color-paper-white); text-align: left; }
.poker-disclosure__number { min-width: 0; color: var(--color-muted-white); font-family: var(--font-heading); font-size: 1.75rem; font-weight: 700; }
.poker-disclosure__title { min-width: 0; font-family: var(--font-heading); font-size: clamp(1.5rem, 3vw, 2rem); font-weight: 700; line-height: 1; }
.poker-disclosure__state { min-width: 0; color: var(--color-paper-white); font-size: 1.75rem; text-align: right; transition: transform var(--transition-base); }
.poker-disclosure.is-open .poker-disclosure__state { color: var(--color-blood-red); transform: rotate(45deg); }
.poker-disclosure__panel { overflow: hidden; }
.poker-disclosure__panel > div { width: min(100%, 40rem); min-width: 0; margin-inline-start: 5.625rem; padding-block: 0 var(--space-5); }
.poker-disclosure__panel p { margin-block: 0 var(--space-4); }
.poker-disclosure__panel > div > :last-child { margin-block-end: 0; }
.poker-disclosure__rhythm { color: var(--color-paper-white); font-family: var(--font-heading); font-size: 1.35rem; line-height: 1.1; }

.poker-audience__intro { width: min(100%, 51.25rem); min-width: 0; margin-inline: auto; }
.poker-audience__columns { display: grid; width: 100%; min-width: 0; grid-template-columns: minmax(0, 3fr) minmax(0, 5fr) minmax(0, 4fr); gap: var(--space-5); margin-block-start: var(--space-7); }
.poker-audience__item { min-width: 0; padding-inline-start: var(--space-5); border-inline-start: var(--border-default); }
.poker-audience__item > :last-child { margin-block-end: 0; }
.poker-audience__item h3 { font-size: clamp(1.75rem, 3vw, 2.25rem); }
.poker-audience__closing { color: var(--color-paper-white); font-size: var(--text-label); font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }

.poker-faq__intro { width: min(100%, 35rem); min-width: 0; }
.poker-faq__list { display: flex; width: min(100%, 47.5rem); min-width: 0; flex-direction: column; margin-block-start: var(--space-7); border-block-start: var(--border-default); }
.poker-faq__item { width: 100%; min-width: 0; border-block-end: var(--border-default); }
.poker-faq__button { display: grid; width: 100%; min-width: 0; grid-template-columns: minmax(0, 1fr) 2.5rem; align-items: center; gap: var(--space-3); padding: var(--space-4) 0; background: transparent; color: var(--color-paper-white); font-size: 1.25rem; font-weight: 600; line-height: 1.35; text-align: left; }
.poker-faq__button > span { min-width: 0; }
.poker-faq__button > span:last-child { font-size: 1.75rem; text-align: right; transition: transform var(--transition-base); }
.poker-faq__item.is-open { border-inline-start: 2px solid var(--color-blood-red); padding-inline-start: var(--space-3); }
.poker-faq__item.is-open .poker-faq__button > span:last-child { color: var(--color-blood-red); transform: rotate(45deg); }
.poker-faq__answer { overflow: hidden; }
.poker-faq__answer > div { width: min(100%, 38.75rem); min-width: 0; padding-block: 0 var(--space-5); }
.poker-faq__answer > div > :last-child { margin-block-end: 0; }
.poker-faq__age { display: inline-block; margin-inline-end: var(--space-2); padding: 2px 6px; background: var(--color-blood-red); color: var(--color-paper-white); font-size: .75rem; font-weight: 700; letter-spacing: .1em; line-height: 1.25; vertical-align: .15em; }

.poker-cta { padding-block-start: var(--space-9); }
.poker-cta__sheet { width: 100%; min-width: 0; padding: var(--space-9) var(--space-6); background: var(--color-smoke-grey); }
.poker-cta__copy { display: flex; width: min(100%, 42.5rem); min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-4); margin-inline: auto; }
.poker-cta__copy > * { margin: 0; }
.poker-cta__actions { display: flex; width: 100%; min-width: 0; flex-wrap: wrap; gap: var(--space-3); }
.poker-cta__actions > * { min-width: 0; }

.poker-closing { padding-block-start: 0; }
.poker-closing__copy { width: min(100%, 42.5rem); min-width: 0; margin-inline-start: calc((100% / 6) * 1); padding-block-start: var(--space-6); border-block-start: var(--border-default); }
.poker-closing__statement { max-width: 42.5rem; color: var(--color-paper-white); font-size: 1.125rem; line-height: 1.5; }
.poker-closing__legal { max-width: 42.5rem; margin-block-end: 0; padding-block-end: var(--space-4); border-block-end: var(--border-default); color: var(--color-muted-white); font-size: var(--text-legal); }

@media (max-width: 65.625rem) {
  .poker-hero__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); }
  .poker-hero__copy { max-width: 36rem; }
  .poker-hero__media { aspect-ratio: 16 / 9; }
  .poker-host__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
  .poker-host__media { width: min(100%, 42rem); aspect-ratio: 3 / 4; }
  .poker-host__media img { height: calc(100% - 2rem); }
}

@media (max-width: 60rem) {
  .poker-premise__copy,
  .poker-process__intro,
  .poker-closing__copy { margin-inline-start: 0; }
  .poker-band--one,
  .poker-band--two,
  .poker-band--three { grid-template-columns: minmax(0, 1fr); padding-inline: 0; }
  .poker-band--two { padding: var(--space-5); }
  .poker-band__body,
  .poker-band--two .poker-band__body { justify-self: start; }
  .poker-band__ending { display: grid; grid-template-columns: 2px minmax(0, 1fr); gap: var(--space-3); }
  .poker-band__ending span { grid-row: 1 / span 2; height: auto; }
  .poker-band__ending .poker-band__number { grid-column: 2; }
  .poker-band__ending h3 { grid-column: 2; max-width: none; }
  .poker-audience__columns { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .poker-audience__item:nth-child(3) { grid-column: 1 / -1; }
}

@media (max-width: 51.25rem) {
  .poker-disclosure__button { grid-template-columns: minmax(0, 1fr) 2.5rem; }
  .poker-disclosure__number { grid-column: 1 / -1; }
  .poker-disclosure__title { grid-column: 1; }
  .poker-disclosure__state { grid-column: 2; grid-row: 2; }
  .poker-disclosure__panel > div { width: 100%; margin-inline-start: 0; }
}

@media (max-width: 47.5rem) {
  .poker-page .poker-reveal { opacity: 1; transform: none; transition: none; }
  .poker-hero { padding-block-start: var(--space-9); padding-block-end: var(--space-7); }
  .poker-hero h1 { font-size: clamp(2.5rem, 11vw, 3rem); }
  .poker-hero__lead { font-size: 1rem; }
  .poker-hero__media { aspect-ratio: 4 / 5; margin-block-start: var(--space-2); }
  .poker-hero__media img { object-position: 66% 25%; }
  .poker-premise h2 { font-size: clamp(1.9rem, 9vw, 2.25rem); }
  .poker-premise__notice { padding: var(--space-4); }
  .poker-rhythms__bands { margin-block-start: var(--space-6); }
  .poker-band { gap: var(--space-3); padding-block: var(--space-5); }
  .poker-band--two { padding: var(--space-5) var(--space-4); }
  .poker-band__number { font-size: 3.5rem; }
  .poker-band h3 { font-size: 1.9rem; }
  .poker-host__media { width: 100%; aspect-ratio: 4 / 5; }
  .poker-dining__media { width: calc(100% - (2 * var(--gutter-mobile))); margin: var(--space-6) auto; }
  .poker-dining__media img { aspect-ratio: 1 / 1; }
  .poker-dining__media figcaption { width: 100%; }
  .poker-dining__after { width: 100%; }
  .poker-process__intro { width: 100%; }
  .poker-disclosures { width: 100%; margin-block-start: var(--space-6); }
  .poker-audience__intro { width: 100%; }
  .poker-audience__columns { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); margin-block-start: var(--space-6); }
  .poker-audience__item,
  .poker-audience__item:nth-child(3) { grid-column: 1; padding-block-start: var(--space-4); }
  .poker-faq__list { width: 100%; margin-block-start: var(--space-6); }
  .poker-faq__button { min-height: 3.25rem; font-size: 1.125rem; }
  .poker-cta { padding-block-start: var(--space-7); }
  .poker-cta__sheet { padding: var(--space-6) var(--space-5); }
  .poker-cta__actions { flex-direction: column; align-items: stretch; }
  .poker-cta__actions > * { width: 100%; min-height: 3rem; }
  .poker-closing { padding-block-start: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .poker-page .poker-reveal { opacity: 1; transform: none; transition: none; }
}
