.poker-guide-page { overflow: hidden; }
.poker-guide-page section { scroll-margin-top: 6rem; }
.poker-guide-page a { text-decoration-thickness: 1px; }
.poker-guide-page a:hover { text-decoration-color: var(--color-brass); }

.pg-hero { position: relative; min-height: 42.5rem; display: grid; align-items: center; isolation: isolate; }
.pg-hero__media, .pg-hero__media::after { position: absolute; inset: 0; }
.pg-hero__media { z-index: -2; overflow: hidden; background: var(--color-black); }
.pg-hero__media::after { z-index: 1; background: linear-gradient(90deg, rgba(18,19,17,.82) 0%, rgba(18,19,17,.6) 39%, rgba(18,19,17,.12) 70%, rgba(18,19,17,.3) 100%); content: ""; }
.pg-hero__media img { width: 100%; height: 100%; object-fit: cover; object-position: 66% center; }
.pg-hero__container { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); }
.pg-hero__copy { grid-column: 1 / span 5; min-width: 0; max-width: 36.25rem; display: flex; flex-direction: column; gap: var(--space-5); }
.pg-hero__copy > * { min-width: 0; margin: 0; }
.pg-hero__copy .display-title { max-width: 10ch; }
.pg-hero__copy .lead { max-width: 35rem; }
.pg-hero__actions { display: flex; flex-wrap: wrap; gap: var(--space-3); min-width: 0; }
.pg-hero__actions > * { min-width: 0; flex: 0 1 auto; }
.pg-hero__note { color: rgba(242,232,213,.76); font-size: var(--text-utility); max-width: 35rem; }

.pg-room__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); align-items: start; }
.pg-room__intro { grid-column: 1 / span 5; min-width: 0; max-width: 38rem; }
.pg-room__items { grid-column: 6 / -1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); min-width: 0; align-items: start; }
.pg-room__item { min-width: 0; border-top: 1px solid var(--color-tobacco); padding-top: var(--space-4); }
.pg-room__item:nth-child(2) { margin-top: var(--space-6); }
.pg-room__item:nth-child(3) { margin-top: var(--space-3); }
.pg-room__item h3 { font-size: clamp(1.55rem, 2.4vw, 2rem); }
.pg-room__item p { max-width: 28rem; }
.pg-small-label { margin: 0 0 var(--space-3); color: var(--color-tobacco); font-size: var(--text-label); font-weight: 700; letter-spacing: var(--tracking-label); line-height: 1.35; text-transform: uppercase; }

.pg-hand-flow__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); align-items: start; }
.pg-hand-flow__intro { grid-column: 1 / span 5; min-width: 0; max-width: 37rem; }
.pg-stages { grid-column: 6 / span 6; margin: 0; padding: 0; list-style: none; min-width: 0; border-left: 1px solid var(--color-felt); }
.pg-stage { display: grid; grid-template-columns: 4rem minmax(0, 1fr); gap: var(--space-4); min-width: 0; padding: 0 0 var(--space-6) var(--space-5); }
.pg-stage + .pg-stage { padding-top: var(--space-6); border-top: var(--border); }
.pg-stage__marker { width: 2.75rem; height: 2.75rem; display: grid; place-items: center; border: 1px solid var(--color-brass); color: var(--color-tobacco); font-size: var(--text-label); font-weight: 800; letter-spacing: .08em; line-height: 1; }
.pg-stage__marker--button { border-radius: 50%; }
.pg-stage__marker--cards { position: relative; border-color: var(--color-felt); }
.pg-stage__marker--cards::after { position: absolute; width: .9rem; height: 1.1rem; border: 1px solid var(--color-brass); background: var(--color-paper); content: ""; transform: translate(.28rem, -.28rem); }
.pg-stage__marker--felt { background: var(--color-felt); color: var(--color-cream); }
.pg-stage__copy { min-width: 0; max-width: 34rem; }
.pg-stage__copy h3 { font-size: clamp(1.6rem, 2.5vw, 2rem); }
.pg-stage__next { display: block; margin-top: var(--space-3); color: var(--color-tobacco); font-size: var(--text-label); font-weight: 700; letter-spacing: var(--tracking-label); text-transform: uppercase; }

.pg-terms__intro { width: min(100%, 38rem); margin-bottom: var(--space-7); }
.pg-terms__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-4); min-width: 0; }
.pg-term-card { position: relative; min-width: 0; border: var(--border); background: var(--color-paper); padding: var(--space-5); }
.pg-term-card > :last-child { margin-bottom: 0; }
.pg-term-card h3 { font-size: clamp(1.65rem, 2.3vw, 2rem); }
.pg-term-card p { max-width: 25rem; }
.pg-term-card__label, .pg-format-panel__eyebrow { color: var(--color-tobacco); font-size: var(--text-label); font-weight: 700; letter-spacing: var(--tracking-label); line-height: 1.35; text-transform: uppercase; }
.pg-term-card--buyin { border-left: 3px solid var(--color-tobacco); }
.pg-term-card--final { background: var(--color-paper); }
.pg-term-card--final::before { display: block; height: .45rem; margin: calc(var(--space-5) * -1) calc(var(--space-5) * -1) var(--space-4); background: var(--color-felt); content: ""; }
.pg-term-card--night { border-top: 3px solid var(--color-tobacco); }
.pg-chip-motif { display: block; width: 2rem; aspect-ratio: 1; margin-bottom: var(--space-3); border: 1px dashed var(--color-brass); border-radius: 50%; }
.pg-term-card .dealer-button { margin-bottom: var(--space-3); }

.pg-felt-feature__grid { display: grid; grid-template-columns: 7fr 5fr; min-width: 0; }
.pg-felt-feature__media { min-width: 0; margin: 0; min-height: 38rem; overflow: hidden; }
.pg-felt-feature__media img { width: 100%; height: 100%; object-fit: cover; object-position: 48% center; }
.pg-felt-feature__panel { min-width: 0; display: flex; flex-direction: column; gap: var(--space-7); padding: var(--space-7); }
.pg-felt-feature__main { min-width: 0; max-width: 34rem; }
.pg-felt-feature__main > :last-child { margin-bottom: 0; }
.pg-felt-feature__notes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); min-width: 0; }
.pg-etiquette { min-width: 0; border-top: 1px solid var(--color-brass); padding-top: var(--space-3); }
.pg-etiquette h3 { font-size: clamp(1.35rem, 2vw, 1.7rem); }
.pg-etiquette p { max-width: 22rem; }

.pg-formats__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); align-items: start; }
.pg-formats__intro { grid-column: 1 / span 4; min-width: 0; max-width: 30rem; }
.pg-format-panels { grid-column: 5 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); min-width: 0; }
.pg-format-panel { min-width: 0; min-height: 17rem; display: flex; flex-direction: column; gap: var(--space-4); border: var(--border); background: var(--color-paper); color: var(--color-black); padding: var(--space-5); text-decoration: none; transition: border-color var(--transition-base), background-color var(--transition-base), color var(--transition-base); }
.pg-format-panel > * { min-width: 0; margin: 0; }
.pg-format-panel h3 { font-size: clamp(1.8rem, 3vw, 2.35rem); }
.pg-format-panel p { max-width: 25rem; }
.pg-format-panel__action { margin-top: auto; font-size: var(--text-label); font-weight: 700; letter-spacing: var(--tracking-label); text-decoration: underline; text-underline-offset: .22em; text-transform: uppercase; }
.pg-format-panel--tournament { border-color: rgba(242,232,213,.35); background: var(--color-felt); color: var(--color-cream); }
.pg-format-panel--tournament .pg-format-panel__eyebrow { color: var(--color-brass); }
.pg-format-panel--high { border-color: rgba(242,232,213,.25); background: var(--color-black); color: var(--color-cream); }
.pg-format-panel--high .pg-format-panel__eyebrow { color: var(--color-brass); }
.pg-format-panel--private { border-top: 3px solid var(--color-eucalyptus); }
.pg-format-panel:hover { border-color: var(--color-brass); color: inherit; }
.pg-format-panel--night:hover, .pg-format-panel--private:hover { background: var(--color-cream); }

.pg-tournament__intro { width: min(100%, 36rem); margin-bottom: var(--space-7); }
.pg-tournament__steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-5); min-width: 0; border-top: 1px solid rgba(242,232,213,.35); padding-top: var(--space-5); }
.pg-process { min-width: 0; display: flex; flex-direction: column; gap: var(--space-4); }
.pg-process__number { width: 3rem; height: 3rem; display: grid; place-items: center; border: 1px solid var(--color-brass); color: var(--color-brass); font-size: var(--text-label); font-weight: 800; letter-spacing: .08em; }
.pg-process__number--ring { border-radius: 50%; outline: 1px dashed rgba(184,137,76,.65); outline-offset: .25rem; }
.pg-process h3 { font-size: clamp(1.55rem, 2.3vw, 1.9rem); }
.pg-process p { max-width: 24rem; }
.pg-process a { color: var(--color-cream); }

.pg-first-visit__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); align-items: start; }
.pg-first-visit__intro { grid-column: 1 / span 4; min-width: 0; max-width: 28rem; }
.pg-preparation-blocks { grid-column: 5 / -1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-4); min-width: 0; }
.pg-prep { min-width: 0; border-top: 1px solid var(--color-brass); padding-top: var(--space-4); }
.pg-prep__number { display: block; margin-bottom: var(--space-3); color: var(--color-tobacco); font-family: var(--font-heading); font-size: 3rem; font-weight: 600; letter-spacing: var(--tracking-tight); line-height: .9; }
.pg-prep h3 { font-size: clamp(1.5rem, 2.2vw, 1.85rem); }
.pg-prep p { max-width: 26rem; }
.pg-prep__recap { color: var(--color-tobacco); font-size: var(--text-label); font-weight: 700; letter-spacing: .06em; line-height: 1.6; text-transform: uppercase; }
.pg-restaurant-aside { grid-column: 5 / span 6; min-width: 0; margin-top: var(--space-3); border-left: 3px solid var(--color-tobacco); background: rgba(112,69,47,.08); padding: var(--space-4) var(--space-5); }
.pg-restaurant-aside > :last-child { margin-bottom: 0; }
.pg-restaurant-aside h3 { font-size: clamp(1.45rem, 2vw, 1.75rem); }
.pg-restaurant-aside p { max-width: 40rem; }

.pg-private__wrap { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); min-width: 0; }
.pg-private__media { grid-column: 1 / -1; min-width: 0; height: 30rem; margin: 0; overflow: hidden; }
.pg-private__media img { width: 100%; height: 100%; object-fit: cover; object-position: 60% center; }
.pg-private__feature { z-index: 1; grid-column: 1 / span 6; min-width: 0; margin-top: calc(var(--space-8) * -1); display: flex; flex-direction: column; gap: var(--space-4); }
.pg-private__feature > * { min-width: 0; margin: 0; }
.pg-private__feature p { max-width: 34rem; }
.pg-private__cues { grid-column: 7 / -1; min-width: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); align-self: end; padding: var(--space-6) 0 0 var(--space-5); }
.pg-private-cue { min-width: 0; border-top: 1px solid var(--color-brass); padding-top: var(--space-3); }
.pg-private-cue h3 { font-size: clamp(1.4rem, 2vw, 1.75rem); }
.pg-private-cue p { max-width: 22rem; }

.pg-final__panel { width: min(100%, 47.5rem); margin-inline: auto; display: flex; flex-direction: column; gap: var(--space-5); min-width: 0; }
.pg-final__panel > * { min-width: 0; margin: 0; }
.pg-final__panel .lead { max-width: 35rem; }
.pg-final__actions { display: flex; flex-wrap: wrap; gap: var(--space-3); min-width: 0; }
.pg-final__actions > * { flex: 0 1 auto; min-width: 9.4rem; }
.pg-final__note { max-width: 40rem; border-top: 1px solid rgba(242,232,213,.45); padding-top: var(--space-4); color: rgba(242,232,213,.75); font-size: var(--text-utility); }

@media (max-width: 70rem) {
  .pg-terms__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pg-room__items { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pg-room__item:nth-child(3) { grid-column: 1 / span 2; max-width: calc(50% - var(--space-4)); margin-top: 0; }
  .pg-tournament__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 65rem) {
  .pg-room__grid, .pg-hand-flow__grid, .pg-formats__grid, .pg-first-visit__grid { grid-template-columns: 1fr; }
  .pg-room__intro, .pg-room__items, .pg-hand-flow__intro, .pg-stages, .pg-formats__intro, .pg-format-panels, .pg-first-visit__intro, .pg-preparation-blocks, .pg-restaurant-aside { grid-column: 1; }
  .pg-room__intro, .pg-hand-flow__intro, .pg-formats__intro, .pg-first-visit__intro { max-width: 42rem; }
  .pg-room__item:nth-child(3) { grid-column: auto; max-width: none; }
  .pg-preparation-blocks { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pg-restaurant-aside { width: min(100%, 44rem); }
}
@media (max-width: 60rem) {
  .pg-hero { min-height: 37rem; }
  .pg-hero__copy { grid-column: 1 / span 6; }
  .pg-felt-feature__grid { grid-template-columns: 1fr; }
  .pg-felt-feature__media { min-height: 30rem; }
  .pg-private__feature { grid-column: 1 / span 7; }
  .pg-private__cues { grid-column: 8 / -1; grid-template-columns: 1fr; }
}
@media (max-width: 56.25rem) {
  .pg-hero { min-height: auto; display: flex; flex-direction: column; align-items: stretch; }
  .pg-hero__media { position: relative; inset: auto; width: 100%; height: auto; aspect-ratio: 16 / 10; z-index: auto; }
  .pg-hero__media::after { display: none; }
  .pg-hero__media img { object-position: 66% center; }
  .pg-hero__container { width: 100%; display: block; margin: 0; padding: var(--space-7) var(--gutter); background: var(--color-felt); }
  .pg-hero__copy { max-width: none; }
  .pg-hero__copy .display-title { max-width: 11ch; font-size: clamp(2.75rem, 13vw, 4rem); }
  .pg-hero__copy .lead { max-width: 37rem; font-size: 1.0625rem; }
  .pg-hand-flow__grid { gap: var(--space-6); }
  .pg-stages { border-left: 0; }
  .pg-stage { padding-left: 0; }
  .pg-terms__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pg-format-panels { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pg-private__wrap { grid-template-columns: 1fr; gap: 0; }
  .pg-private__media, .pg-private__feature, .pg-private__cues { grid-column: 1; }
  .pg-private__feature { margin-top: 0; box-shadow: none; }
  .pg-private__cues { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: var(--space-5) 0 0; }
}
@media (max-width: 45rem) {
  .pg-room__items, .pg-terms__grid, .pg-format-panels, .pg-tournament__steps, .pg-preparation-blocks, .pg-private__cues { grid-template-columns: 1fr; }
  .pg-room__item, .pg-room__item:nth-child(2), .pg-room__item:nth-child(3) { margin-top: 0; }
  .pg-room__items { gap: var(--space-6); }
  .pg-stages { gap: 0; }
  .pg-stage { grid-template-columns: 2.75rem minmax(0, 1fr); gap: var(--space-3); padding-bottom: var(--space-5); }
  .pg-stage + .pg-stage { padding-top: var(--space-5); }
  .pg-felt-feature__media { min-height: 0; aspect-ratio: 4 / 5; }
  .pg-felt-feature__panel { padding: var(--space-5); gap: var(--space-5); }
  .pg-felt-feature__notes { grid-template-columns: 1fr; gap: var(--space-5); }
  .pg-format-panel { min-height: auto; }
  .pg-tournament__steps { gap: var(--space-5); }
  .pg-process { display: grid; grid-template-columns: 2.75rem minmax(0, 1fr); gap: var(--space-3); }
  .pg-process__number { width: 2.75rem; height: 2.75rem; }
  .pg-private__media { height: auto; aspect-ratio: 16 / 10; }
  .pg-private__media img { object-position: 61% center; }
  .pg-private__feature { padding: var(--space-5); }
  .pg-private__cues { gap: var(--space-5); }
  .pg-final__actions, .pg-hero__actions { flex-direction: column; }
  .pg-final__actions > *, .pg-hero__actions > * { width: 100%; min-width: 0; min-height: 3rem; }
}
@media (prefers-reduced-motion: reduce) {
  .poker-guide-page *, .poker-guide-page *::before, .poker-guide-page *::after { scroll-behavior: auto; }
}
