.poker-tables-page { overflow: clip; }
.poker-tables-page a:focus-visible { outline: var(--outline-focus); outline-offset: 3px; }
.pt-hero { position: relative; min-height: 46rem; isolation: isolate; background: var(--color-charcoal); }
.pt-hero__image, .pt-hero__image picture, .pt-hero__image img { position: absolute; inset: 0; width: 100%; height: 100%; }
.pt-hero__image { z-index: -2; }
.pt-hero__image::after { position: absolute; inset: 0; content: ""; pointer-events: none; background-image: radial-gradient(rgb(245 241 232 / 5%) .5px, transparent .7px); background-size: 5px 5px; opacity: .4; }
.pt-hero__image::before { position: absolute; inset: 0; z-index: 1; content: ""; background: linear-gradient(90deg, rgb(21 23 23 / 96%) 0%, rgb(21 23 23 / 82%) 38%, rgb(21 23 23 / 30%) 72%, rgb(21 23 23 / 45%) 100%); }
.pt-hero__image img { object-fit: cover; object-position: center; }
.pt-hero__container { min-height: 46rem; display: flex; align-items: flex-end; padding-block: var(--space-8); }
.pt-hero__content { min-width: 0; max-width: 62.5rem; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-5); }
.pt-hero__content > * { min-width: 0; margin: 0; }
.pt-hero__content h1 { max-width: 61.25rem; font-size: clamp(3.5rem, 8vw, 7rem); letter-spacing: var(--tracking-display); }
.pt-hero__lead { max-width: 35.625rem; font-size: var(--text-lead); line-height: 1.55; }
.pt-hero__actions { width: 100%; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-5); }
.pt-hero__context { max-width: 44rem; padding-top: var(--space-4); border-top: 1px solid var(--color-line-green); color: var(--color-sage); font-size: var(--text-meta); line-height: 1.6; }
.pt-object__grid { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 6fr); gap: var(--space-8); align-items: center; }
.pt-object__media { position: relative; width: 100%; aspect-ratio: 4 / 5; margin: 0; overflow: hidden; border-radius: var(--radius-media); }
.pt-object__media::after { position: absolute; inset: 0; content: ""; pointer-events: none; background-image: radial-gradient(rgb(245 241 232 / 5%) .5px, transparent .7px); background-size: 5px 5px; opacity: .4; }
.pt-object__media img { width: 100%; height: 100%; object-fit: cover; object-position: left center; }
.pt-object__label { position: absolute; z-index: 1; left: var(--space-4); bottom: var(--space-4); margin: 0; color: var(--color-sand); font-size: var(--text-utility); font-weight: 800; letter-spacing: var(--tracking-utility); line-height: 1.4; text-transform: uppercase; }
.pt-object__copy { min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-5); }
.pt-object__copy > :is(p, .eyebrow, h2) { margin: 0; }
.pt-object__copy h2 { font-size: clamp(2.75rem, 5vw, 4.75rem); }
.pt-object__lead { font-size: var(--text-lead); line-height: 1.55; }
.pt-object__copy > p:last-of-type { max-width: 31.25rem; }
.pt-object__materials { display: flex; flex-direction: column; gap: var(--space-4); width: 100%; max-width: 31.25rem; padding-top: var(--space-5); border-top: 1px solid var(--color-line-green); }
.pt-object__materials p { margin: 0; color: var(--color-sage); font-size: var(--text-meta); line-height: 1.6; }
.pt-object__materials strong { color: var(--color-sand); font-weight: 700; }
.pt-ritual__heading { width: min(100%, 47.5rem); }
.pt-ritual__heading p { max-width: 37.5rem; }
.pt-ritual__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-8); align-items: stretch; }
.pt-ritual__card { position: relative; min-width: 0; min-height: 100%; padding: var(--space-6); border: 1px solid var(--color-line-green); background: rgb(232 217 190 / 6%); transition: transform var(--transition-base), border-color var(--transition-base); }
.pt-ritual__card > * { min-width: 0; }
.pt-ritual__card:hover, .pt-ritual__card:focus-within { border-color: var(--color-sand); transform: translateY(-.3rem); }
.pt-ritual__card--accent { border-inline-start: .45rem solid var(--color-tangerine); }
.pt-ritual__mark { display: block; margin-bottom: var(--space-7); color: var(--color-sand); font-family: var(--font-heading); font-size: 2.25rem; line-height: 1; }
.pt-ritual__card p { max-width: 20.625rem; }
.pt-room__intro { width: min(100%, 46rem); }
.pt-room__figure { position: relative; width: 100%; aspect-ratio: 16 / 8.5; margin: var(--space-7) 0 var(--space-5); overflow: hidden; border-radius: var(--radius-media); }
.pt-room__figure::after { position: absolute; inset: 0; content: ""; pointer-events: none; background-image: radial-gradient(rgb(245 241 232 / 5%) .5px, transparent .7px); background-size: 5px 5px; opacity: .4; }
.pt-room__figure img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.pt-room__captions { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--space-7); align-items: start; }
.pt-room__primary-caption { max-width: 40.625rem; margin: 0; font-size: var(--text-lead); line-height: 1.55; }
.pt-room__note { padding-top: var(--space-4); border-top: 1px solid var(--color-line-green); }
.pt-room__note p { max-width: 21.25rem; margin: 0; color: var(--color-sage); }
.pt-guide { color: var(--color-charcoal); }
.pt-guide .eyebrow { color: var(--color-green); }
.pt-guide__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-8); align-items: start; }
.pt-guide__intro { min-width: 0; }
.pt-guide__intro h2 { color: var(--color-green); }
.pt-guide__intro .lead { max-width: 28.125rem; }
.pt-guide__steps { display: flex; flex-direction: column; margin: 0; padding: 0; list-style: none; counter-reset: pt-step; }
.pt-guide__step { position: relative; min-width: 0; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: var(--space-5); padding: var(--space-5) 0; border-top: 1px solid rgb(18 58 50 / 30%); }
.pt-guide__step:last-child { border-bottom: 1px solid rgb(18 58 50 / 30%); }
.pt-guide__step h3 { margin-bottom: var(--space-2); color: var(--color-green); }
.pt-guide__step p { max-width: 31.25rem; margin: 0; }
.pt-guide__index { color: var(--color-tangerine-deep); font-family: var(--font-heading); font-size: 1.375rem; line-height: 1.2; }
.pt-house__intro { width: min(100%, 47.5rem); }
.pt-house__intro p { max-width: 37.5rem; }
.pt-house__index { margin-top: var(--space-7); }
.pt-house__row { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: var(--space-5); align-items: center; padding: var(--space-5) 0; border-top: 1px solid var(--color-line-green); text-decoration: none; }
.pt-house__row:last-child { border-bottom: 1px solid var(--color-line-green); }
.pt-house__row:hover { color: var(--color-white); text-decoration: none; }
.pt-house__row:hover h3 { color: var(--color-tangerine); }
.pt-house__number { color: var(--color-violet); font-size: var(--text-utility); font-weight: 800; letter-spacing: var(--tracking-label); }
.pt-house__row-copy { min-width: 0; display: flex; flex-direction: column; gap: var(--space-2); }
.pt-house__row-copy > * { margin: 0; }
.pt-house__row-copy p { max-width: 34rem; color: var(--color-sage); }
.pt-house__row-copy h3 { transition: color var(--transition-fast); }
.pt-house__arrow { color: var(--color-tangerine); font-size: 1.75rem; line-height: 1; }
.pt-closing { padding-block: var(--space-10); }
.pt-closing__content { width: min(100%, 47.5rem); display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-5); }
.pt-closing__content > * { min-width: 0; margin: 0; }
.pt-closing__content h2 { color: var(--color-sand); font-size: clamp(4rem, 8vw, 8.5rem); }
.pt-closing__content > p { max-width: 33.75rem; }
.pt-closing__actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-4) var(--space-5); }
.pt-closing__actions a:not(.button) { font-size: var(--text-meta); }
.pt-note { padding-block: var(--space-8); }
.pt-note__content { max-width: 47.5rem; }
.pt-note h2 { font-size: clamp(1.875rem, 3.5vw, 2.75rem); }
.pt-note__content > p { max-width: 38rem; color: var(--color-sage); margin: 0; }
[data-pt-reveal] { opacity: 0; transform: translateY(1.25rem); transition: opacity var(--transition-atmospheric), transform var(--transition-atmospheric); }
[data-pt-reveal].is-visible { opacity: 1; transform: none; }
@media (max-width: 62rem) {
  .pt-object__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
  .pt-object__media { max-width: 34rem; }
  .pt-object__copy { max-width: 34rem; }
  .pt-guide__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
}
@media (max-width: 60rem) {
  .pt-hero { min-height: 0; }
  .pt-hero__image { position: relative; height: 26rem; }
  .pt-hero__image::before { background: linear-gradient(0deg, rgb(21 23 23 / 45%), transparent 60%); }
  .pt-hero__container { min-height: 0; padding-top: var(--space-6); }
  .pt-ritual__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pt-ritual__card:nth-child(3) { grid-column: 1 / span 2; }
}
@media (max-width: 52rem) {
  .pt-room__captions { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); }
  .pt-room__note p { max-width: 40.625rem; }
}
@media (max-width: 47.9375rem) {
  .pt-hero__lead { font-size: 1.0625rem; }
  .pt-object__media { width: 100%; max-width: none; aspect-ratio: 4 / 5; }
  .pt-room__figure { aspect-ratio: 4 / 5; margin-top: var(--space-6); }
  .pt-ritual__cards { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); }
  .pt-ritual__card:nth-child(3) { grid-column: 1; }
  .pt-guide__step { grid-template-columns: minmax(0, 1fr); gap: var(--space-3); }
  .pt-house__row { grid-template-columns: auto minmax(0, 1fr); gap: var(--space-4); }
  .pt-house__arrow { display: none; }
  .pt-closing { padding-block: var(--space-9); }
  .pt-closing__content h2 { font-size: clamp(3rem, 13vw, 4.5rem); }
}
@media (max-width: 42.5rem) {
  .pt-hero__image { height: auto; aspect-ratio: 4 / 5; width: calc(100% - (var(--container-pad-mobile) * 2)); margin-inline: var(--container-pad-mobile); border-radius: var(--radius-media); overflow: hidden; }
  .pt-hero__image img { object-position: 58% center; }
  .pt-hero__content h1 { font-size: clamp(3rem, 13vw, 4.25rem); }
  .pt-object__media { aspect-ratio: 4 / 5; }
  .pt-object__copy h2 { font-size: clamp(2.5rem, 11vw, 3.5rem); }
  .pt-ritual__heading, .pt-room__intro, .pt-house__intro { width: 100%; }
  .pt-ritual__card { padding: var(--space-5); }
  .pt-room__figure img { object-position: 58% center; }
}
@media (prefers-reduced-motion: reduce) {
  [data-pt-reveal] { opacity: 1; transform: none; transition: none; }
  .pt-ritual__card, .pt-house__row-copy h3 { transition: none; }
}
