.home-page { background: var(--color-ink); }
.home-page .section { position: relative; }
.home-page .home-text-link { display: inline-flex; align-items: center; min-height: 2.75rem; gap: var(--space-2); font-weight: 700; }
.home-page .home-text-link span { color: var(--color-gold); }
.home-hero { position: relative; min-height: 48rem; isolation: isolate; background: var(--color-ink); }
.home-hero__media { position: absolute; inset: 0; z-index: -2; overflow: hidden; background: var(--color-ink); }
.home-hero__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(17,18,22,.94) 0%, rgba(23,29,41,.78) 38%, rgba(88,42,53,.38) 66%, rgba(17,18,22,.16) 100%); }
.home-hero__media img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.home-hero__content { min-height: 48rem; display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 4fr) minmax(0, 3fr); grid-template-rows: 1fr auto; column-gap: var(--space-5); padding-top: 10rem; padding-bottom: var(--space-8); }
.home-hero__copy { grid-column: 1 / span 1; grid-row: 1; align-self: center; min-width: 0; max-width: 35rem; padding-left: var(--space-5); border-left: 2px solid var(--color-gold); }
.home-hero__copy .lead { max-width: 34rem; }
.home-hero__format { display: flex; flex-wrap: wrap; gap: var(--space-2); margin: 0 0 var(--space-5); color: var(--color-linen); font-size: var(--text-meta); font-weight: 700; letter-spacing: .09em; line-height: var(--leading-meta); text-transform: uppercase; }
.home-hero__format span { color: var(--color-gold); }
.home-hero__actions { max-width: 34rem; }
.home-hero__actions .button { padding-inline: var(--space-5); }
.home-hero__card { grid-column: 3 / span 1; grid-row: 2; align-self: end; width: 100%; max-width: 18.75rem; justify-self: end; position: relative; min-width: 0; border-top: 2px solid var(--color-gold); border-radius: var(--radius-panel); }
.home-hero__card h2 { font-size: clamp(1.65rem, 2vw, 2rem); }
.home-hero__card p { font-size: .93rem; line-height: 1.55; }
.home-chip-outline { width: 2.75rem; height: 2.75rem; position: absolute; top: var(--space-5); right: var(--space-5); border: 1px solid var(--color-gold); border-radius: 50%; opacity: .82; }
.home-chip-outline::before, .home-chip-outline::after { content: ""; position: absolute; inset: .3rem; border: 1px dashed var(--color-gold); border-radius: 50%; }
.home-chip-outline::after { inset: 1rem; border-style: solid; border-color: var(--color-linen); }
.home-rhythms__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); }
.home-rhythms__intro { grid-column: 1 / span 6; min-width: 0; max-width: 35rem; }
.home-rhythm { min-width: 0; position: relative; padding-top: var(--space-6); border-top: 1px solid var(--color-line); }
.home-rhythm--one { grid-column: 1 / span 4; }
.home-rhythm--two { grid-column: 5 / span 4; }
.home-rhythm--three { grid-column: 9 / span 4; margin-top: var(--space-7); padding: var(--space-6); background: var(--color-linen); color: var(--color-ink); }
.home-rhythm--three h3, .home-rhythm--three strong { color: var(--color-ink); }
.home-rhythm--three .home-text-link { color: var(--color-burgundy); }
.home-rhythm p { max-width: 31rem; }
.home-step-dot { display: grid; place-items: center; width: 2.4rem; height: 2.4rem; margin-bottom: var(--space-4); border: 1px solid var(--color-gold); border-radius: 50%; color: var(--color-gold); font-size: var(--text-meta); font-weight: 700; font-variant-numeric: tabular-nums; }
.home-table__layout { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); align-items: center; }
.home-table__media { grid-column: 1 / span 7; grid-row: 1; width: 100%; margin: 0; aspect-ratio: 4 / 3; }
.home-table__media img { transition: transform var(--transition-base), filter var(--transition-base); }
.home-table__content { grid-column: 8 / span 5; grid-row: 1; min-width: 0; margin-left: calc(var(--space-5) * -2); position: relative; z-index: 1; }
.home-table__panel { max-width: 33rem; margin-left: auto; border-radius: var(--radius-panel); }
.home-table__panel > :last-child, .home-table__lower > :last-child { margin-bottom: 0; }
.home-table__panel > p:not(.eyebrow) { max-width: 28.75rem; }
.home-table__detail { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: var(--space-3); padding-top: var(--space-5); border-top: var(--border-subtle); }
.home-table__detail > span { color: var(--color-gold); line-height: 1.4; }
.home-table__detail h3 { font-size: 1.25rem; }
.home-table__lower { max-width: 32.5rem; margin: var(--space-6) 0 0 auto; padding-left: var(--space-5); border-left: 1px solid var(--color-gold); }
.home-table__lower p { max-width: 32.5rem; }
.home-holdem__intro { width: min(100%, 42.5rem); margin-left: calc((100% / 12) * 1); }
.home-holdem__steps { display: grid; grid-template-columns: repeat(2, minmax(0, 5fr)); gap: var(--space-6) calc(100% / 6); width: min(100%, 62rem); margin: var(--space-7) auto 0; }
.home-holdem__step { min-width: 0; position: relative; padding: var(--space-5) 0 0 var(--space-7); border-top: 1px solid var(--color-line); }
.home-holdem__step p { max-width: 36rem; }
.home-holdem__step--inset { padding: var(--space-6) var(--space-5) var(--space-5) calc(var(--space-7) + var(--space-3)); border-top: 2px solid var(--color-gold); background: var(--color-graphite); }
.home-large-number { position: absolute; left: 0; top: var(--space-5); color: var(--color-gold); font-family: var(--font-heading); font-size: 2rem; font-weight: 600; line-height: 1; font-variant-numeric: tabular-nums; }
.home-attention { overflow: hidden; background: linear-gradient(120deg, var(--color-burgundy), var(--color-navy)); }
.home-attention::before, .home-attention::after { content: ""; position: absolute; border: 1px solid rgba(199,166,106,.38); border-radius: 50%; pointer-events: none; }
.home-attention::before { width: 18rem; height: 18rem; right: -7rem; top: 3rem; }
.home-attention::after { width: 9rem; height: 9rem; right: 2rem; bottom: -3rem; }
.home-attention__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); position: relative; }
.home-attention__intro { grid-column: 1 / span 6; min-width: 0; max-width: 36rem; }
.home-attention__principle { grid-column: span 4; min-width: 0; padding-left: var(--space-5); border-left: 2px solid var(--color-gold); }
.home-attention__principle p { max-width: 28.75rem; }
.home-attention__principle.panel { padding: var(--space-6); border-left: 1px solid var(--color-line); }
.home-gather__layout { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); align-items: stretch; }
.home-gather__media { grid-column: 6 / span 7; grid-row: 1; width: 100%; min-width: 0; margin: 0; aspect-ratio: 3 / 2; }
.home-gather__content { grid-column: 1 / span 5; grid-row: 1; min-width: 0; max-width: 32.5rem; padding: var(--space-6) 0; position: relative; z-index: 1; }
.home-gather__content > h2 { max-width: 30rem; }
.home-gather__path { min-width: 0; padding-top: var(--space-5); border-top: var(--border-subtle); }
.home-gather__path p { max-width: 31.25rem; }
.home-gather__path.panel { padding: var(--space-5); }
.home-etiquette__frame { position: relative; }
.home-etiquette__frame::before, .home-etiquette__frame::after { content: ""; position: absolute; pointer-events: none; }
.home-etiquette__frame::before { top: 0; left: 0; width: 21%; height: 6rem; border-top: 2px solid var(--color-gold); border-left: 2px solid var(--color-gold); }
.home-etiquette__frame::after { right: 0; bottom: 0; width: 21%; height: 6rem; border-right: 2px solid var(--color-gold); border-bottom: 2px solid var(--color-gold); }
.home-etiquette__intro { width: min(100%, 37rem); }
.home-etiquette__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-5) var(--space-7); margin-top: var(--space-7); }
.home-etiquette__cue { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: var(--space-4); min-width: 0; padding: var(--space-5) 0; border-top: var(--border-subtle); }
.home-etiquette__cue p { max-width: 20rem; }
.home-etiquette__cue--panel { padding: var(--space-5); border: 1px solid var(--color-line); background: rgba(17,18,22,.28); }
.home-cue-number { display: grid; place-items: center; width: 2.25rem; height: 2.25rem; border: 1px solid var(--color-gold); border-radius: 50%; color: var(--color-gold); font-size: var(--text-meta); font-weight: 700; font-variant-numeric: tabular-nums; }
.home-views__intro { width: min(100%, 33.75rem); }
.home-views__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-7); align-items: start; }
.home-route-card { display: flex; flex-direction: column; min-width: 0; min-height: 20rem; gap: var(--space-4); padding: var(--space-6); border: var(--border-subtle); background: var(--color-graphite); transition: transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base); }
.home-route-card > * { min-width: 0; margin: 0; }
.home-route-card p { max-width: 20rem; }
.home-route-card .home-text-link { margin-top: auto; }
.home-route-card--restaurant { background: var(--color-navy); }
.home-route-card--poker { margin-top: calc(var(--space-5) * -1); border-top: 2px solid var(--color-gold); background: var(--color-burgundy); }
.home-route-card--gallery { background: var(--color-graphite); }
.home-boundary__block { width: min(100% - (var(--page-gutter) * 2), 42.5rem); margin-inline: auto; }
.home-boundary__linen { padding: var(--space-6); border-top: 2px solid var(--color-gold); background: var(--color-linen); color: var(--color-ink); }
.home-boundary__linen h2, .home-boundary__linen strong { color: var(--color-ink); }
.home-boundary__linen .eyebrow { color: var(--color-burgundy); }
.home-boundary__linen > :last-child, .home-boundary__ink > :last-child { margin-bottom: 0; }
.home-boundary__ink { padding: var(--space-6); border-bottom: var(--border-subtle); }
.home-boundary__ink p { max-width: 40rem; }
.home-final { overflow: hidden; position: relative; background: linear-gradient(130deg, var(--color-burgundy), var(--color-navy)); }
.home-final::before { content: ""; position: absolute; inset: var(--space-6); border-top: 1px solid var(--color-gold); border-right: 1px solid var(--color-gold); opacity: .6; pointer-events: none; }
.home-final__content { display: flex; flex-direction: column; align-items: center; min-width: 0; width: min(100% - (var(--page-gutter) * 2), 36.25rem); margin-inline: auto; padding-block: var(--space-10); text-align: center; position: relative; }
.home-final__content > * { min-width: 0; }
.home-final__content p:not(.eyebrow) { margin-bottom: var(--space-5); font-size: var(--text-lead); line-height: var(--leading-lead); }
.home-final__content h2 { font-size: clamp(2.4rem, 5vw, 4.5rem); }
.home-final__content .button { padding-inline: var(--space-6); }
@media (hover: hover) {
  .home-table__media:hover img { filter: brightness(1.06); transform: scale(1.03); }
  .home-route-card:hover { transform: translateY(-2px); border-color: rgba(199,166,106,.55); box-shadow: var(--shadow-card); }
  .home-gather__media:hover img { filter: brightness(1.05); }
}
@media (max-width: 61.24rem) {
  .home-hero { min-height: auto; }
  .home-hero__content { min-height: 43rem; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-rows: 1fr auto; padding-top: 9rem; }
  .home-hero__copy { grid-column: 1 / span 1; }
  .home-hero__card { grid-column: 2 / span 1; }
  .home-rhythms__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-rhythms__intro { grid-column: 1 / span 2; }
  .home-rhythm--one, .home-rhythm--two { grid-column: span 1; }
  .home-rhythm--three { grid-column: 1 / span 2; margin-top: 0; }
  .home-table__media { grid-column: 1 / span 6; }
  .home-table__content { grid-column: 7 / span 6; margin-left: 0; }
  .home-attention__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-attention__intro { grid-column: 1 / span 2; }
  .home-attention__principle { grid-column: span 1; }
  .home-attention__principle:last-child { grid-column: 1 / span 2; }
  .home-gather__layout { grid-template-columns: 1fr; }
  .home-gather__media { grid-column: 1; grid-row: 1; }
  .home-gather__content { grid-column: 1; grid-row: 2; max-width: 100%; padding: var(--space-7) 0 0; }
  .home-holdem__steps { grid-template-columns: 1fr; gap: var(--space-5); max-width: 42rem; }
  .home-holdem__intro { margin-left: 0; }
  .home-etiquette__grid { grid-template-columns: 1fr; max-width: 42rem; }
  .home-views__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-route-card--poker { grid-column: 1 / span 2; grid-row: 1; margin-top: 0; }
  .home-route-card--restaurant { grid-column: 1; grid-row: 2; }
  .home-route-card--gallery { grid-column: 2; grid-row: 2; }
}
@media (max-width: 47.99rem) {
  .home-hero { display: flex; flex-direction: column; }
  .home-hero__media { position: relative; inset: auto; height: clamp(18rem, 50vh, 26rem); order: 1; }
  .home-hero__media::after { background: linear-gradient(180deg, rgba(17,18,22,.1), rgba(17,18,22,.4)); }
  .home-hero__content { order: 2; display: flex; flex-direction: column; min-height: auto; width: 100%; padding-top: var(--space-7); padding-bottom: var(--space-7); gap: var(--space-5); }
  .home-hero__copy { width: 100%; max-width: 34rem; padding-left: var(--space-4); border-left-width: 2px; }
  .home-hero__copy h1 { font-size: clamp(2.7rem, 12vw, 4.2rem); }
  .home-hero__card { width: 100%; max-width: 34rem; align-self: stretch; }
  .home-rhythms__grid, .home-table__layout, .home-attention__grid, .home-gather__layout { grid-template-columns: 1fr; }
  .home-rhythms__intro, .home-rhythm--one, .home-rhythm--two, .home-rhythm--three, .home-table__media, .home-table__content, .home-attention__intro, .home-attention__principle, .home-attention__principle:last-child, .home-gather__media, .home-gather__content { grid-column: 1; }
  .home-rhythm--three { padding: var(--space-5); }
  .home-table__media { grid-row: 1; }
  .home-table__content { grid-row: 2; }
  .home-table__panel { max-width: none; margin: 0; }
  .home-table__lower { max-width: none; margin: var(--space-5) 0 0; }
  .home-holdem__steps { width: 100%; margin-top: var(--space-6); }
  .home-holdem__step { padding-left: var(--space-6); }
  .home-holdem__step--inset { padding: var(--space-5) var(--space-4) var(--space-4) var(--space-6); }
  .home-attention__principle { padding-left: var(--space-4); }
  .home-attention__principle.panel { padding: var(--space-5); }
  .home-gather__content { padding-top: var(--space-6); }
  .home-etiquette__grid { margin-top: var(--space-6); gap: 0; }
  .home-etiquette__frame::before { width: 30%; height: 4rem; }
  .home-etiquette__frame::after { width: 30%; height: 4rem; }
  .home-views__grid { grid-template-columns: 1fr; margin-top: var(--space-6); }
  .home-route-card--poker, .home-route-card--restaurant, .home-route-card--gallery { grid-column: 1; grid-row: auto; }
  .home-route-card { min-height: auto; padding: var(--space-5); }
  .home-boundary__linen, .home-boundary__ink { padding: var(--space-5); }
  .home-final__content { padding-block: var(--space-8); }
}
@media (max-width: 24.375rem) { .home-final__content .button { width: 100%; } }
@media (prefers-reduced-motion: reduce) { .home-table__media img, .home-route-card { transition: none; } }