.poker-page { overflow: clip; }
.poker-page .section { position: relative; }
.poker-page .media-frame img { transition: transform var(--transition-image); }
.poker-page .media-frame:hover img { transform: scale(1.025); }

.poker-hero__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 20px; align-items: center; }
.poker-hero__copy { min-width: 0; max-width: 34rem; display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
.poker-hero__copy h1, .poker-hero__copy p { margin: 0; }
.poker-hero__copy .lead { max-width: 31rem; }
.poker-hero__copy > p:not(.eyebrow):not(.lead) { max-width: 32rem; }
.poker-hero__actions { width: 100%; min-width: 0; }
.poker-paths { width: 100%; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; padding-top: 8px; }
.poker-paths__item { min-width: 0; border-top: var(--border-default); padding-top: 12px; display: flex; flex-direction: column; gap: 8px; color: var(--color-muted-ink); font-size: var(--text-small); line-height: var(--leading-small); }
.poker-paths__item strong { color: var(--color-ink); font-size: var(--text-label); letter-spacing: .1em; line-height: 1.25; text-transform: uppercase; }
.poker-hero__media { width: 100%; min-width: 0; height: 620px; border-radius: var(--radius-hero); }
.poker-hero__media img { object-position: center center; }

.poker-spaces__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 20px; row-gap: 48px; }
.poker-spaces__intro { grid-column: 1 / span 4; min-width: 0; max-width: 27rem; }
.poker-spaces__intro p:not(.eyebrow) { max-width: 26rem; }
.poker-space-panels { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.poker-space-panel { min-width: 0; min-height: 100%; border-top: var(--border-default); padding-top: 24px; display: flex; flex-direction: column; align-items: flex-start; gap: 16px; }
.poker-space-panel > * { margin: 0; }
.poker-space-panel p:not(.eyebrow) { max-width: 34rem; }

.poker-tactile__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 2fr) minmax(0, 4fr); gap: 20px; align-items: end; }
.poker-tactile__media { grid-column: 1; width: 100%; min-width: 0; aspect-ratio: 4 / 5; margin: 0; border-radius: var(--radius-feature); }
.poker-tactile__media img { object-position: center; }
.poker-tactile__copy { grid-column: 3; min-width: 0; max-width: 31rem; }
.poker-tactile__copy p:not(.eyebrow) { max-width: 30rem; }
.poker-tactile__copy blockquote { max-width: 32rem; }

.poker-social__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 48px 20px; }
.poker-social__intro { grid-column: 1 / span 5; min-width: 0; max-width: 34rem; }
.poker-social__intro p:not(.eyebrow) { max-width: 32rem; }
.poker-principles { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; }
.poker-principle { min-width: 0; padding: 0 32px; border-left: var(--border-default); display: flex; flex-direction: column; gap: 16px; }
.poker-principle:first-child { border-left: 0; padding-left: 0; }
.poker-principle > * { margin: 0; }
.poker-principle span { color: var(--color-dusty-blue); font-family: var(--font-heading); font-size: 3rem; line-height: 1; }
.poker-principle p { max-width: 37rem; }

.poker-beginners__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 48px 20px; }
.poker-beginners__intro { grid-column: 1 / span 4; min-width: 0; max-width: 29rem; }
.poker-beginners__intro .lead { max-width: 28rem; }
.poker-guide { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 24px 20px; }
.poker-guide__step { min-width: 0; padding: 32px; border: var(--border-default); border-radius: var(--radius-feature); background: var(--color-ivory); display: flex; flex-direction: column; align-items: flex-start; gap: 16px; }
.poker-guide__step > * { margin: 0; }
.poker-guide__step:nth-child(1), .poker-guide__step:nth-child(3) { grid-column: 1 / span 5; }
.poker-guide__step:nth-child(2), .poker-guide__step:nth-child(4) { grid-column: 7 / span 5; }
.poker-guide__step:nth-child(2) { margin-top: 48px; }
.poker-guide__step:nth-child(4) { margin-top: 48px; }
.poker-guide__number { color: var(--color-dusty-blue); font-family: var(--font-heading); font-size: 2.25rem; line-height: 1; }
.poker-guide__step p { max-width: 35rem; }
.poker-detail-toggle { min-height: 44px; border: 0; border-bottom: 1px solid var(--color-brass); padding: 0; background: transparent; color: var(--color-dusty-blue); font-size: var(--text-small); font-weight: 650; }
.poker-detail { width: 100%; overflow: hidden; opacity: 1; transition: opacity var(--transition-base); }
.poker-detail p { margin: 0; color: var(--color-muted-ink); }

.poker-experienced__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 20px; align-items: start; }
.poker-experienced__copy { grid-column: 1 / span 6; min-width: 0; max-width: 40rem; }
.poker-experienced__copy > p:not(.eyebrow) { max-width: 38rem; }
.poker-experienced__links { display: flex; flex-wrap: wrap; gap: 16px 24px; min-width: 0; }
.poker-courtesy { grid-column: 9 / span 3; min-width: 0; margin-top: 80px; padding: 24px; background: var(--color-sage-mist); border-radius: var(--radius-card); }
.poker-courtesy p:not(.eyebrow) { margin-bottom: 0; max-width: 20rem; }

.poker-evening__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 20px; align-items: start; }
.poker-evening__copy { grid-column: 1 / span 4; min-width: 0; max-width: 30rem; }
.poker-evening__copy p:not(.eyebrow) { max-width: 29rem; }
.poker-evening__right { grid-column: 6 / span 7; min-width: 0; display: flex; flex-direction: column; gap: 24px; }
.poker-evening__media { width: 100%; min-width: 0; margin: 0; border-radius: var(--radius-feature); }
.poker-evening__media img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; object-position: center; }
.poker-evening__media figcaption { max-width: 32rem; }
.poker-directions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.poker-directions article { min-width: 0; border-top: var(--border-default); padding-top: 16px; display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
.poker-directions article > * { margin: 0; }
.poker-directions h3 { font-size: 1.35rem; }

.poker-private__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 20px; align-items: start; }
.poker-private__copy { grid-column: 1 / span 5; min-width: 0; max-width: 34rem; }
.poker-private__copy p:not(.eyebrow) { max-width: 33rem; }
.poker-private__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; min-width: 0; }
.poker-occasions { grid-column: 8 / span 5; min-width: 0; padding: 32px; }
.poker-occasions > .eyebrow { margin-bottom: 24px; }
.poker-occasions__item { min-width: 0; padding: 20px 0; border-top: var(--border-default); }
.poker-occasions__item:last-child { padding-bottom: 0; }
.poker-occasions__item h3 { margin-bottom: 8px; }
.poker-occasions__item p { margin-bottom: 0; max-width: 31rem; }

.poker-choices__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 48px 20px; }
.poker-choices__intro { grid-column: 1 / span 5; min-width: 0; max-width: 34rem; }
.poker-choices__intro p:not(.eyebrow) { max-width: 32rem; }
.poker-choice-cards { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 20px; align-items: end; }
.poker-choice-card { min-width: 0; padding: 32px; border: var(--border-default); border-radius: var(--radius-feature); background: var(--color-ivory); display: flex; flex-direction: column; align-items: flex-start; gap: 16px; transition: transform var(--transition-fast), box-shadow var(--transition-fast); }
.poker-choice-card:hover { transform: translateY(-2px); box-shadow: var(--shadow-elevated); }
.poker-choice-card > * { margin: 0; }
.poker-choice-card:nth-child(1) { grid-column: 1 / span 5; }
.poker-choice-card:nth-child(2) { grid-column: 6 / span 3; margin-top: 48px; }
.poker-choice-card:nth-child(3) { grid-column: 9 / span 4; }
.poker-choice-card p:not(.eyebrow) { max-width: 31rem; }
.poker-choice-card__links { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; min-width: 0; }

.poker-closing__panel { padding: 96px 48px; border-radius: var(--radius-feature); background: var(--color-blue-mist); }
.poker-closing__copy { max-width: 38.75rem; margin-inline: auto; min-width: 0; text-align: center; display: flex; flex-direction: column; align-items: center; gap: 24px; }
.poker-closing__copy > * { margin: 0; }
.poker-closing__copy h2 { max-width: 36rem; }
.poker-closing__copy p:not(.eyebrow) { max-width: 34rem; }

@media (max-width: 1279px) {
  .poker-hero__grid { grid-template-columns: minmax(300px, 3fr) minmax(0, 5fr); }
  .poker-hero__media { height: 540px; }
  .poker-spaces__grid, .poker-social__grid, .poker-beginners__grid, .poker-experienced__grid, .poker-evening__grid, .poker-private__grid, .poker-choices__grid { grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 40px 16px; }
  .poker-spaces__intro, .poker-social__intro, .poker-beginners__intro, .poker-choices__intro { grid-column: 1 / span 5; }
  .poker-space-panels { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  .poker-space-panel:nth-child(3) { grid-column: 1 / span 1; }
  .poker-principles { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 0; }
  .poker-principle { padding: 0 24px; }
  .poker-principle:nth-child(3) { grid-column: 1 / span 1; }
  .poker-guide { grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 16px; }
  .poker-guide__step:nth-child(1), .poker-guide__step:nth-child(3) { grid-column: 1 / span 4; }
  .poker-guide__step:nth-child(2), .poker-guide__step:nth-child(4) { grid-column: 5 / span 4; margin-top: 0; }
  .poker-experienced__copy { grid-column: 1 / span 5; }
  .poker-courtesy { grid-column: 6 / span 3; margin-top: 56px; }
  .poker-evening__copy { grid-column: 1 / span 3; }
  .poker-evening__right { grid-column: 4 / span 5; }
  .poker-private__copy { grid-column: 1 / span 4; }
  .poker-occasions { grid-column: 5 / span 4; }
  .poker-choice-cards { grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 16px; }
  .poker-choice-card:nth-child(1), .poker-choice-card:nth-child(2) { grid-column: span 4; margin-top: 0; }
  .poker-choice-card:nth-child(3) { grid-column: 1 / span 4; }
}

@media (max-width: 1023px) {
  .poker-hero__copy { gap: 20px; }
  .poker-paths { grid-template-columns: 1fr; gap: 12px; }
  .poker-tactile__grid { grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 16px; align-items: center; }
  .poker-tactile__media { grid-column: 1 / span 4; }
  .poker-tactile__copy { grid-column: 5 / span 4; }
  .poker-directions { grid-template-columns: 1fr; }
  .poker-private__actions { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 899px) {
  .poker-hero__grid { grid-template-columns: 1fr; gap: 24px; }
  .poker-hero__copy { max-width: 42rem; }
  .poker-hero__media { height: auto; aspect-ratio: 4 / 5; }
  .poker-paths { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .poker-evening__grid { grid-template-columns: 1fr; }
  .poker-evening__copy, .poker-evening__right { grid-column: 1; max-width: none; }
  .poker-evening__copy { max-width: 38rem; }
}

@media (max-width: 819px) {
  .poker-experienced__grid, .poker-private__grid { grid-template-columns: 1fr; }
  .poker-experienced__copy, .poker-courtesy, .poker-private__copy, .poker-occasions { grid-column: 1; max-width: none; }
  .poker-courtesy { margin-top: 0; max-width: 34rem; }
  .poker-private__copy { max-width: 38rem; }
  .poker-occasions { max-width: 42rem; }
}

@media (max-width: 767px) {
  .poker-page .section { padding-block: 64px; }
  .poker-hero__copy { gap: 20px; }
  .poker-hero__media { border-radius: var(--radius-feature); }
  .poker-paths { grid-template-columns: 1fr; }
  .poker-spaces__grid, .poker-social__grid, .poker-beginners__grid, .poker-experienced__grid, .poker-evening__grid, .poker-private__grid, .poker-choices__grid { grid-template-columns: 1fr; gap: 32px; }
  .poker-spaces__intro, .poker-social__intro, .poker-beginners__intro, .poker-choices__intro, .poker-space-panels, .poker-principles, .poker-guide, .poker-experienced__copy, .poker-courtesy, .poker-evening__copy, .poker-evening__right, .poker-private__copy, .poker-occasions, .poker-choice-cards { grid-column: 1; max-width: none; }
  .poker-space-panels, .poker-principles, .poker-guide, .poker-choice-cards { grid-template-columns: 1fr; gap: 16px; }
  .poker-space-panel { padding: 24px; border: var(--border-default); border-radius: var(--radius-card); background: var(--color-ivory); }
  .poker-tactile__grid { grid-template-columns: 1fr; gap: 24px; }
  .poker-tactile__copy, .poker-tactile__media { grid-column: 1; max-width: none; }
  .poker-tactile__copy { order: 1; }
  .poker-tactile__media { order: 2; }
  .poker-principle, .poker-principle:first-child { padding: 0 0 24px; border-left: 0; border-bottom: var(--border-default); }
  .poker-principle:last-child { padding-bottom: 0; border-bottom: 0; }
  .poker-guide__step:nth-child(1), .poker-guide__step:nth-child(2), .poker-guide__step:nth-child(3), .poker-guide__step:nth-child(4) { grid-column: 1; margin-top: 0; }
  .poker-guide__step { padding: 24px; }
  .poker-evening__right { gap: 24px; }
  .poker-directions { grid-template-columns: 1fr; gap: 16px; }
  .poker-private__actions { align-items: stretch; }
  .poker-occasions { padding: 24px; }
  .poker-choice-card:nth-child(1), .poker-choice-card:nth-child(2), .poker-choice-card:nth-child(3) { grid-column: 1; margin-top: 0; }
  .poker-choice-card { padding: 24px; }
  .poker-closing__panel { padding: 64px 24px; }
  .poker-closing__copy { gap: 20px; }
}

@media (prefers-reduced-motion: reduce) {
  .poker-page .media-frame:hover img, .poker-choice-card:hover { transform: none; }
}
