.offline-poker-page {
  background: var(--color-ink-950);
}

.offline-poker-page .offline-hero__grid,
.offline-poker-page .offline-experience__grid,
.offline-poker-page .offline-lounge__grid,
.offline-poker-page .offline-reservation__grid,
.offline-poker-page .offline-location__grid {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
}

.offline-hero {
  padding-block: var(--space-10) var(--space-8);
  background: linear-gradient(120deg, var(--color-ink-950) 0%, var(--color-felt-700) 100%);
}

.offline-hero__copy {
  grid-column: 1 / span 5;
  min-width: 0;
  align-self: center;
}

.offline-hero__copy h1 {
  max-width: 14ch;
}

.offline-hero__copy .lead {
  max-width: 56ch;
}

.offline-hero__actions,
.offline-closing__actions {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
}

.offline-hero__actions > *,
.offline-closing__actions > * {
  min-width: 0;
}

.offline-hero__media {
  grid-column: 7 / span 6;
  min-width: 0;
  min-height: 31rem;
  margin: 0;
}

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

.offline-hero__cues {
  grid-column: 1 / -1;
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: var(--space-4);
  border-top: var(--border-default);
  border-bottom: var(--border-default);
}

.offline-hero__cue {
  min-width: 0;
  padding: var(--space-4) var(--space-5);
}

.offline-hero__cue:first-child {
  padding-left: 0;
}

.offline-hero__cue + .offline-hero__cue {
  border-left: var(--border-default);
}

.offline-hero__cue p:last-child,
.offline-reasons__intro p:last-child,
.offline-offerings__intro p:last-child,
.offline-room__intro p:last-child,
.offline-process__intro p:last-child,
.offline-location__intro p:last-child {
  margin-bottom: 0;
}

.offline-experience__intro {
  grid-column: 1 / span 5;
  min-width: 0;
}

.offline-experience__intro .lead {
  max-width: 63ch;
}

.offline-experience__media {
  width: 100%;
  min-width: 0;
  aspect-ratio: 4 / 3;
  margin: var(--space-5) 0 0;
}

.offline-experience__media img,
.offline-lounge__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.offline-experience__list {
  grid-column: 7 / span 6;
  display: flex;
  min-width: 0;
  flex-direction: column;
}

.offline-experience__item {
  display: grid;
  min-width: 0;
  grid-template-columns: 3rem minmax(0, 1fr);
  gap: var(--space-4);
  padding-block: var(--space-4);
  border-top: var(--border-default);
}

.offline-experience__item:last-child {
  border-bottom: var(--border-default);
}

.offline-experience__item > * {
  min-width: 0;
}

.offline-experience__item h3,
.offline-experience__item p:last-child {
  max-width: 57ch;
}

.offline-experience__item p:last-child {
  margin-bottom: 0;
}

.offline-number,
.offline-step {
  color: var(--color-felt-300);
  font-size: var(--text-xs);
  font-weight: 700;
  letter-spacing: 0.11em;
  line-height: var(--leading-xs);
  text-transform: uppercase;
}

.offline-reasons__intro,
.offline-offerings__intro,
.offline-room__intro,
.offline-process__intro,
.offline-location__intro {
  max-width: 64ch;
}

.offline-reasons__grid {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: var(--space-6);
  border-top: 2px solid var(--color-felt-300);
  border-bottom: var(--border-default);
}

.offline-reasons__cell {
  min-width: 0;
  padding: var(--space-5);
}

.offline-reasons__cell:first-child {
  padding-left: 0;
}

.offline-reasons__cell + .offline-reasons__cell {
  border-left: var(--border-default);
}

.offline-reasons__cell p:last-child {
  margin-bottom: 0;
}

.offline-offerings__rows {
  display: flex;
  min-width: 0;
  flex-direction: column;
  margin-top: var(--space-6);
  border-top: var(--border-default);
}

.offline-offering {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(0, 3fr) minmax(0, 6fr) minmax(0, 3fr);
  align-items: center;
  gap: var(--space-5);
  padding: var(--space-5);
  border-right: var(--border-default);
  border-bottom: var(--border-default);
  border-left: var(--border-default);
  background: var(--color-ink-900);
}

.offline-offering > * {
  min-width: 0;
}

.offline-offering--felt {
  background: var(--color-felt-700);
}

.offline-offering--ivory {
  background: var(--color-ivory-50);
  color: var(--color-ink-950);
}

.offline-offering--ivory :is(h3, p, strong) {
  color: var(--color-ink-950);
}

.offline-offering--ivory .utility-label {
  color: var(--color-felt-700);
}

.offline-offering--ivory .button-secondary {
  border-color: var(--color-line-700);
  color: var(--color-ink-950);
}

.offline-offering__label h3,
.offline-offering__body p {
  margin-bottom: 0;
}

.offline-offering__action {
  display: flex;
  min-width: 0;
  justify-content: flex-end;
}

.offline-lounge__media {
  grid-column: 1 / span 7;
  width: 100%;
  min-width: 0;
  aspect-ratio: 4 / 3;
  margin: 0;
}

.offline-lounge__content {
  grid-column: 8 / span 5;
  min-width: 0;
}

.offline-lounge__content > h2 {
  max-width: 15ch;
}

.offline-lounge__stack {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-5);
}

.offline-lounge__stack > article {
  min-width: 0;
}

.offline-lounge__stack > article + article {
  padding-top: var(--space-5);
  border-top: 1px solid var(--color-copper-400);
}

.offline-lounge__stack p {
  max-width: 55ch;
}

.offline-lounge__stack p:last-child {
  margin-bottom: 0;
}

.offline-copper-label {
  margin: 0 0 var(--space-2);
  color: var(--color-copper-400);
  font-size: var(--text-xs);
  font-weight: 700;
  letter-spacing: 0.11em;
  line-height: var(--leading-xs);
  text-transform: uppercase;
}

.offline-room__panel {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: var(--space-6);
  border: var(--border-default);
  background-color: var(--color-ink-800);
  background-image: linear-gradient(rgba(48, 65, 57, 0.42) 1px, transparent 1px), linear-gradient(90deg, rgba(48, 65, 57, 0.42) 1px, transparent 1px);
  background-size: 2.75rem 2.75rem;
}

.offline-room__panel article {
  min-width: 0;
  padding: var(--space-5);
  background: rgba(18, 25, 22, 0.87);
}

.offline-room__panel article + article {
  border-left: var(--border-default);
}

.offline-room__panel p:last-child {
  margin-bottom: 0;
}

.offline-process__panel {
  margin-top: var(--space-6);
  padding: var(--space-6);
  background: var(--color-ivory-50);
  color: var(--color-ink-950);
}

.offline-process__panel :is(h3, p, strong) {
  color: var(--color-ink-950);
}

.offline-process__panel a {
  color: var(--color-felt-700);
}

.offline-process__steps {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.offline-process__steps article {
  min-width: 0;
  padding: 0 var(--space-5);
}

.offline-process__steps article:first-child {
  padding-left: 0;
}

.offline-process__steps article + article {
  border-left: 1px solid var(--color-line-700);
}

.offline-process__steps p:last-child {
  margin-bottom: 0;
}

.offline-step {
  color: var(--color-felt-700) !important;
}

.offline-process__action {
  display: flex;
  min-width: 0;
  justify-content: flex-start;
  margin-top: var(--space-6);
  padding-top: var(--space-5);
  border-top: 1px solid var(--color-line-700);
}

.offline-reservation__form-wrap {
  grid-column: 1 / span 8;
  min-width: 0;
}

.offline-reservation__intro {
  max-width: 60ch;
}

.offline-reservation__form {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
}

.offline-form-grid {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-4);
}

.offline-field {
  min-width: 0;
}

.offline-field--full {
  grid-column: 1 / -1;
}

.offline-field .error-message {
  margin-bottom: 0;
}

.offline-consent {
  display: grid;
  min-width: 0;
  grid-template-columns: 1.125rem minmax(0, 1fr);
  align-items: start;
  gap: var(--space-3);
}

.offline-consent label {
  margin: 0;
  font-size: var(--text-base);
  font-weight: 400;
}

.offline-form-summary,
.offline-confirmation {
  padding: var(--space-3) var(--space-4);
  border-left: 2px solid var(--color-danger-400);
  background: var(--color-ink-800);
  color: var(--color-ivory-50);
}

.offline-confirmation {
  border-left-color: var(--color-felt-300);
}

.offline-form-summary ul {
  display: grid;
  gap: var(--space-2);
  margin: var(--space-2) 0 0;
}

.offline-reservation__note {
  grid-column: 10 / span 3;
  min-width: 0;
  align-self: end;
  padding: var(--space-5) 0;
  border-top: 1px solid var(--color-copper-400);
  border-bottom: var(--border-default);
}

.offline-reservation__note p {
  max-width: 55ch;
}

.offline-reservation__note p:last-child {
  margin-bottom: 0;
}

.offline-location__grid {
  margin-top: var(--space-6);
}

.offline-location__details {
  grid-column: 8 / span 5;
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-5);
}

.offline-location__details article {
  min-width: 0;
}

.offline-location__details article + article {
  padding-top: var(--space-5);
  border-top: var(--border-default);
}

.offline-location__details h3 {
  max-width: 22ch;
}

.offline-location__details p:last-child,
.offline-location__adult p {
  margin-bottom: 0;
}

.offline-contact-list {
  display: grid;
  gap: var(--space-3);
  margin: 0;
  font-variant-numeric: tabular-nums;
}

.offline-contact-list div {
  display: grid;
  min-width: 0;
  grid-template-columns: 4rem minmax(0, 1fr);
  gap: var(--space-3);
}

.offline-contact-list dt {
  color: var(--color-sage-300);
  font-size: var(--text-sm);
}

.offline-contact-list dd {
  min-width: 0;
  margin: 0;
}

.offline-closing {
  padding-block: var(--space-9);
  background: var(--color-felt-700);
}

.offline-closing__content {
  display: flex;
  width: min(100%, 54ch);
  min-width: 0;
  flex-direction: column;
  align-items: center;
  gap: var(--space-4);
  margin-inline: auto;
  text-align: center;
}

.offline-closing__content > * {
  min-width: 0;
  margin: 0;
}

.offline-closing__content h2 {
  max-width: 16ch;
}

.offline-closing__content p:not(.eyebrow) {
  max-width: 54ch;
}

.offline-closing__actions {
  justify-content: center;
}

.offline-closing__primary {
  background: var(--color-ink-950);
}

.offline-closing__secondary {
  color: var(--color-ivory-50);
}

@media (max-width: 979px) {
  .offline-poker-page .offline-hero__grid {
    grid-template-columns: 1fr;
    gap: var(--space-5);
  }

  .offline-hero__copy,
  .offline-hero__media,
  .offline-hero__cues {
    grid-column: 1;
    width: 100%;
  }

  .offline-hero__copy h1 {
    max-width: 18ch;
  }

  .offline-hero__media {
    min-height: 24rem;
  }
}

@media (max-width: 919px) {
  .offline-offering {
    grid-template-columns: minmax(0, 3fr) minmax(0, 7fr);
  }

  .offline-offering__action {
    grid-column: 2;
    justify-content: flex-start;
  }
}

@media (max-width: 899px) {
  .offline-poker-page .offline-experience__grid,
  .offline-poker-page .offline-lounge__grid,
  .offline-poker-page .offline-reservation__grid {
    grid-template-columns: 1fr;
  }

  .offline-experience__intro,
  .offline-experience__list,
  .offline-lounge__media,
  .offline-lounge__content,
  .offline-reservation__form-wrap,
  .offline-reservation__note {
    grid-column: 1;
    width: 100%;
  }

  .offline-experience__list {
    grid-row: 2;
  }

  .offline-lounge__content {
    grid-row: 1;
  }

  .offline-lounge__media {
    grid-row: 2;
  }

  .offline-reservation__note {
    align-self: auto;
  }

  .offline-reasons__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .offline-reasons__cell:nth-child(3) {
    border-left: 0;
    border-top: var(--border-default);
  }

  .offline-reasons__cell:nth-child(4) {
    border-top: var(--border-default);
  }
}

@media (max-width: 859px) {
  .offline-process__steps {
    grid-template-columns: 1fr;
  }

  .offline-process__steps article,
  .offline-process__steps article:first-child {
    padding: var(--space-5) 0;
  }

  .offline-process__steps article + article {
    border-top: 1px solid var(--color-line-700);
    border-left: 0;
  }

  .offline-process__steps article:first-child {
    padding-top: 0;
  }
}

@media (max-width: 849px) {
  .offline-poker-page .offline-location__grid {
    grid-template-columns: 1fr;
  }

  .offline-location__details {
    grid-column: 1;
    width: 100%;
  }

  .offline-location__details {
    grid-row: 1;
  }
}

@media (max-width: 819px) {
  .offline-room__panel {
    grid-template-columns: 1fr;
  }

  .offline-room__panel article + article {
    border-top: var(--border-default);
    border-left: 0;
  }
}

@media (max-width: 759px) {
  .offline-hero {
    padding-block: var(--space-8);
  }

  .offline-hero__copy h1 {
    max-width: none;
    font-size: clamp(2.5rem, 11vw, 3.25rem);
  }

  .offline-hero__copy .lead {
    max-width: 62ch;
  }

  .offline-hero__actions {
    align-items: stretch;
  }

  .offline-hero__actions .button {
    width: 100%;
  }

  .offline-hero__media {
    min-height: 17rem;
  }

  .offline-hero__cues {
    grid-template-columns: 1fr;
    margin-top: 0;
  }

  .offline-hero__cue,
  .offline-hero__cue:first-child {
    padding: var(--space-4) 0;
  }

  .offline-hero__cue + .offline-hero__cue {
    border-top: var(--border-default);
    border-left: 0;
  }

  .offline-experience__item {
    grid-template-columns: 1fr;
    gap: var(--space-2);
  }

  .offline-reasons__grid {
    grid-template-columns: 1fr;
  }

  .offline-reasons__cell,
  .offline-reasons__cell:first-child {
    padding: var(--space-5) 0;
  }

  .offline-reasons__cell + .offline-reasons__cell,
  .offline-reasons__cell:nth-child(3),
  .offline-reasons__cell:nth-child(4) {
    border-top: var(--border-default);
    border-left: 0;
  }

  .offline-offering {
    grid-template-columns: 1fr;
    gap: var(--space-4);
    padding: var(--space-4);
  }

  .offline-offering__action {
    grid-column: 1;
    width: 100%;
  }

  .offline-offering__action .button {
    width: 100%;
  }

  .offline-process__panel {
    padding: var(--space-4);
  }

  .offline-form-grid {
    grid-template-columns: 1fr;
  }

  .offline-field--full {
    grid-column: 1;
  }

  .offline-reservation__form .button {
    width: 100%;
  }
}

@media (max-width: 639px) {
  .offline-closing {
    padding-block: var(--space-8);
  }

  .offline-closing__actions {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
  }

  .offline-closing__actions .button {
    width: 100%;
  }

  .offline-closing__secondary {
    min-height: 3rem;
  }
}
